Полезные команды Git

Git — это фантастическая технология, которая не только обеспечивает историческое отслеживание исходного кода на протяжении всей разработки, но и позволяет нескольким разработчикам работать над одним проектом, не наступая друг другу на ноги.

Я хотел создать своего рода шпаргалку по командам git, которые я часто использую. Я буду продолжать обновлять этот пост по мере того, как буду открывать для себя другие удобные команды git.


Стартовые команды Git:

1. Создать и проверить новую ветку

git checkout -b <branch>
Войти в полноэкранный режим Выйти из полноэкранного режима

2. Отмена изменений в файле.

git checkout -- <file>
Войти в полноэкранный режим Выход из полноэкранного режима

3. Переименование локальной ветви

git branch -m <oldName> <newName>
Войдите в полноэкранный режим Выйти из полноэкранного режима

4. Объединить указанную ветвь с текущей проверенной ветвью.

git merge <branch>
Войти в полноэкранный режим Выйти из полноэкранного режима


Дополнительные команды Git:

1. Постановка всех изменений

git add -A 
Войти в полноэкранный режим Выйти из полноэкранного режима

помещает все новые, измененные или удаленные файлы в рабочее дерево. Обратите внимание, что это отличается от git add ., который ставит только новые и существующие файлы.

2. Просмотреть все изменения

git diff HEAD
Войти в полноэкранный режим Выйти из полноэкранного режима

То же самое, что и git diff, но просматриваются все изменения, а не только те, которые не были поставлены.

3. Удалить файл из репозитория, но сохранить его в каталоге проекта

git rm --cached <filename>
Войти в полноэкранный режим Выйти из полноэкранного режима

Очень полезно, когда у вас есть файлы, которые вы не хотите отслеживать, но забыли указать в .gitignore, которые были ранее зафиксированы. После добавления их в .gitignore выполните эту команду, чтобы убедиться, что они удалены из репозитория без удаления из локального каталога проекта.

4. Сбросьте все локальные файлы до последней фиксации

git reset --hard
Войдите в полноэкранный режим Выйти из полноэкранного режима
ОПАСНО — соблюдайте осторожность при использовании этой команды, так как она может привести к потере часов работы.

Я часто обнаруживаю, что у меня есть нефиксированные изменения в ветке, в которой я возился (пробелы, операторы печати). git не позволяет вам проверить другую ветку с нефиксированными изменениями, поэтому это быстрый способ сбросить каталог проекта на HEAD.

5. Отмена последней фиксации

git reset --hard HEAD^
Войти в полноэкранный режим Выйти из полноэкранного режима
ОПАСНОСТЬ — Может также привести к непреднамеренной потере работы.

Мы все делали коммиты, о которых потом жалели… Используйте эту команду, чтобы уничтожить изменения после последней фиксации.

6. Измените предыдущий коммит

git commit --amend -m <newMsg>
Войти в полноэкранный режим Выйти из полноэкранного режима

Добавление опции -m позволяет вам изменить сообщение предыдущего коммита. Вы также можете внести новые изменения в коммит, и предыдущий коммит унаследует их.

7. Удалите все ветки, которые больше не существуют на удаленном сервере

git branch --merged | egrep -v "(^*|master|main|<branchToSave>)" | xargs git branch -d
Войти в полноэкранный режим Выйти из полноэкранного режима
ОПАСНО — при этом будут удалены все вновь созданные ветки, которые ещё не были выведены на удалённую репозиторию. не забудьте указать особые случаи, как в <branchToSave>.

Это можно использовать для очистки локального репозитория, если у вас много старых веток, которые уже были объединены. Если вы хотите узнать, как это работает, посмотрите этот замечательный пост на stack overflow.

Оцените статью
Procodings.ru
Добавить комментарий