Git — распределённая система управления версиями.
Любая другая VCS
Git
Новый git repo
git init
— инициализировать git репозиторийgit remote add <NAME> <URL>
— добавить удаленный репозиторийСуществующий git repo
git clone <URL>
— склонировать репозиторийgit clone <URL> <PATHNAME>
— склонировать репозиторий в определенную директориюПротоколы передачи для git:
git add <FILENAME>
— добавить файл в индексgit commit -m "<MESSAGE>"
— зафиксировать изменения файлаgit status
— текущее состояние файлов в репозиторииУдаление файлов
git rm <FILENAME>
— удалить файлgit rm --cached <FILENAME>
— удалить только из индексаПеремещение файлов
git mv <FILE_FROM> <FILE_TO>
— переместить/переименовать файлСоздание веток
git branch <NAME>
— создать веткуПереключение веток
git status
— узнать текущую веткуgit checkout <NAME>
— переключиться на веткуgit checkout -b <NAME>
— создать и переключиться на веткуgit switch <NAME>
— переключиться на веткуgit switch -c <NAME>
— создать и переключиться на веткуgit switch -
— вернуться к предыдущей извлечённой веткеgit merge <BRANCH>
— влить изменения из ветки BRANCH в текущуюgit merge --ff <BRANCH>
— “быстро перемотать” текущую ветку на BRANCH, если BRANCH - продолжение текущей веткиgit merge --no-ff <BRANCH>
— создать коммит слияния ветки BRANCH в текущуюgit merge --ff-only <BRANCH>
— “быстро перемотать” текущую ветку на BRANCH по возможностиgit remote show <remote>
— получить список удаленных веток<remote>/<branch>
— название ветки слеженияgit fetch <remote>
— синхронизация вашего локального репозитория с удалённымgit push <remote> <branch>
— отправить изменения в удаленный репозиторий в ветку <branch>
git push <remote> <branch>:<other branch>
— отправить изменения из ветки <branch>
в удаленный репозиторий в ветку <other branch>
git checkout -b <branch> <remote>/<branch>
— подтянуть новую удаленную ветку в локальный репозиторийgit checkout --track <remote>/<branch>
— подтянуть новую удаленную ветку в локальный репозиторийgit pull
— получить изменения в текущую ветку из удаленной (при наличии ветки слежения)git pull <remote> <branch>
— получить изменения в текущую ветку из удаленной ветки <branch>
git log
— показать всю историю измененийgit log -p -2
— показать историю изменений с патчамиgit log --stat
— показать историю изменений со статистикойgit log --pretty=oneline
— показать каждый коммит в одну строкуgit log --pretty=oneline" --graph
— показать историю изменений в виде ASCII графаgit log -S <function_name>
— показать коммиты где была добавлена или удалена строкаgit log -- <path/to/file>
— показать коммиты где менялся только этот файл