Создать репозиторий:
-
git init <project_name> - создать новый локальный репозиторий.-
git clone <url> - создание копии (удаленного) репозитория.-
git clone https://oauth2:<token>@<url> - клонирование репозитория с oauth2 протоколом, например если включена двухфакторка.Изменения:
-
git add <file> - индексировать файл.-
git add . - индексировать все файлы.-
git commit -m "commit message" - зафиксировать индексированные файлы с комментарием.-
git commit -am "commit message" - зафиксировать все отслеживаемые файлы с комментарием.-
git reset <file> - откат изменений до определенного коммита.-
git reset --hard - вернуть дерево проекта и индекс в состояние, соответствующее указанному коммиту, удалив изменения последующих коммитов.Отслеживание репозитория:
-
git status - список новых или измененных файлов, которые еще не закоммитены.-
git diff - показать изменения, не внесенные в индекс.-
git diff --cached - изменения, внесенные в индекс.-
git diff HEAD - показать все индексированные и неиндексированные изменения файлов.-
git diff commit1 commit2 - показать различия между двумя коммитами.-
git blame <file> - показать дату изменения и автора для данного файла.-
git show <commit>:<file> - показать изменения для определенного коммита или файла.-
git log - показать полную историю изменений.-
git log -p <file/directory> - показать историю изменений для файла/папки, включая различия (diffs).Работа с ветками:
-
git branch - показать все локальные ветки.-
git branch -av - показать все локальные и удаленные ветки.-
git checkout my_branch - переключиться на ветку my_branch.-
git branch new_branch / git checkout -b new_branch - создание новой ветки new_branch.-
git branch -d my_branch - удалить ветку my_branch. -
git checkout branch_b / git merge branch_a - объединить branch_b и branch_a.-
git tag my_tag - добавить тег к текущему коммиту.-
git tag -a my_tag -m "commit" - создать тег с комментарием.Синхронизация:
-
git fetch - получить последние изменения с удаленного сервера без слияния.-
git pull - получить последние изменения с удаленного сервера и выполнить слияние. -
git pull --rebase - получить последние изменения с удаленного сервера и перебазировать.-
git push - применить локальные изменения на удаленный сервер.-
git help - показать справочную информацию о Git.#git