Метка: git

Удаление файлов из git

Удалить файлы из git’a с сохранением в файловой системе:

git rm --cached my_file.txt
git rm --cached -r my_folder_name

Удалить директорию из git’a без сохранения в файловой системе:

git rm file.txt
git rm -r my_folder_name

Чтобы лишние файлы не попадали в репозиторий добавляйте их в .gitignore.

Перенос проекта с github на gitflic

Недавно пришлось переносить множество репозиториев с ГитХаба на ГитФлик. Возможно еще кому-то пригодится:

git clone URL_GIHUB_REPOSITORY && cd REPOSITORY_FOLDER && git checkout main && git config user.name "ВАШЕ_ИМЯ" && git config user.email "ВАША_ПОЧТА" && git branch -m "master" && git push origin master && git push origin --delete main && cd .. && rm -rf REPOSITORY_FOLDER

Что делает команда?

  1. Клонирует репозиторий URL_GIHUB_REPOSITORY.
  2. Переходит в директорию репозитория.
  3. Переключается на ветку main (почему на ГитХабе main?).
  4. Устанавливает новое имя (на всякий случай).
  5. Устанавливает новую почту (тоже на всякий).
  6. Переименовывает main в master.
  7. Пушит в репозиторий на ГитФлик.
  8. Удаляет ненужную ветку main.
  9. Выходит из директории репозитория.
  10. Удаляет локальную директорию репозитория.

Важно

Не забудьте заменить URL_GIHUB_REPOSITORY на URL действующего ГитХаб-репозитория. А также укажите REPOSITORY_FOLDER, ВАШЕ_ИМЯ и ВАША_ПОЧТА.

Форсируем LF для всего проекта

Полезная заметка из блога Александра Макарова

Форсировать линуксовое окончание строк LF вместо CRLF из Windows полезно потому как тот же Docker CRLF очень не любит. Настраивать локально что-то не очень приятно, поэтому просто замечательно что есть возможность форсировать это для всей команды средствами git.

  1. В корне репозитория создаём .gitattributes, пишем туда * text=auto eol=lf первой строкой.
  2. Делаем коммит с этим изменением, пушим.

Собственно, всё. Осталось локально себе сконвертить всё в LF. В этом также поможет git:

  1. git rm --cached -r .
  2. git reset --hard

Источник: rmcreative.ru/blog/post/forsiruem-lf-dlja-vsego-proekta

Основы работы с git

Изменение username и email в git’e

Отобразить текущий конфиг:

git config --list
git config user.name
git config user.email
git config user.name ; git config user.name

Изменить глобально:

git config --global user.name "Username"
git config --global user.email "username@mail.domain"

Изменить локально:

git config user.name "Username"
git config user.email "username@mail.domain"

Основные команды git

Примеры основных команд для работы с git.

(далее…)

Первоначальная настройка git

После установки git’a необходимо указать своё имя и E-mail. Они используются при создании коммитов.

(далее…)

Изменение корневого удаленного репозитория

cd project_root_directory
git remote rename origin old-origin
git remote add origin FULL_URL_REMOTE_REPOSITORY.git

Графические оболочки для git

Для VCS (системы контроля версий) git существует несколько интересных проектов облегчающих работу с репозиторием. Командная строка, конечно, функциональна, но работать с графическим интерфейсом намного удобнее.

  • GitHub Desktop — оболочка от GitHub, простой и удобный интерфейс. Доступны версии для Windows и Mac.
  • SourceTree — одна из самых популярных и удобных оболочек для Windows и Mac. Хорошая интеграция с GitHub и BitBucket (особенно).
  • GitKraken — еще одна простая и функциональная оболочка для Windows, Linux и Mac.
  • SmartGit — функциональная утилита с более высоким порогом вхождения. Доступны версии для Windows, Linux и Mac.

Простой способ разворачивать (деплоить) проекты на боевом (production) сервере через git

Иногда встречаются заказчики использующие git для хранения своих проектов и, вместе с этим, выгружающие их на боевые серверы через FTP (sFTP). Эта простая инструкция покажет способ разворачивать и обновлять проекты через git.

(далее…)