Git - одна из распределенных систем контроля версий. Позволяет управлять версионностью файлов, откатываться до версий, создавать ветки и сливать их.
Репозиторий - это хранилище файлов, поддерживающее версионность. Создать репозиторий можно с помощью команды git init, примененной в папке с будующим репозиторием. Для добавления версионности к файлу используется команда git add <имя файла>.
Для создания сохранения необходимо выполнить фиксацию, она же Commit. Это можно сделать с помощью команды git commit следующим образом: git commit -m "Текст коммита". Сообщение к коммиту писать ОБЯЗАТЕЛЬНО. Для всех измененных файлов необходимо использовать git add или использовать ключ -a при коммите.
Для просмотра журнала изменений файла используется команда git log. Эта команда выведет весь список коммитов этого файла. Для просмотра журнала в виде графа, используется команда git log --graph, она выведет список коммитов в виде дерева и отобразит все ветки изменений файла.
Перемещаться на тот или иной коммит мы можем с помощью команды git checkout. Для этого нужно написать git chechout <хеш номер из истории>. Для возврата к самому последнему коммиту нужно написать git checkout <имя ветки>. Отменять изменения можно с помощью команды git revert и git reset. Для этого нужно написать команду git revert(reset) <номер коммита>. Команда git revert перейдет к указанному коммиту, создав новый коммит, а git reset перейдет к указанному состоянию и затрет историю изменений.
Ветки используются для параллельного внесения изменений в файл, которые не изменят его основной вид, пока ветка не будет слита с первичной (master) веткой. Для создания новой ветки используется команда git branch <имя новой ветки>. Переход к ветке осуществляется командой git checkout <имя ветки>. Удаление ветки осуществляется командой *git branch -d <имя ветки>. Слияние веток осуществляется командой *git merge <имя ветки>. Эта команда выполняется в той ветке в которую будет слита необходимая ветка.
Скачивание удаленного репозитория производится с помощью команды git clone. Например: git clone https://github.com/Alex-Krasko/Lesson-2.git . Эта команда скопирует весь репозиторий по указанной ссылке.
Для отправки изменений в удалённый репозиторий используется команда git push. Для этого пишется в папке с репозиторием команда git push origin <название ветки>, чаще всего используется ветка master.
Для принятия изменений из ветки в ветку в нашем репозитории, или из форка удалённого репозитория в удалённый репозиторий используются Pull request'ы