Git -это одна из реализаций распределённых систем контроля версий, имеющая как и локальные, так и удалённые репозитории. Является самой популярной реализацией систем контроля версий в мире.
- git init - инициализация локального репозитория
- git status - получить информацию от git о его текущем статусе
- git add - добавить файл(ы) к следующему коммиту
- git commit -m "message" - создание коммита
- git log - вывод на экран всех коммитов
- git checkout - переход от одного коммита к другому
- git checkout master - вернуться к актуальному состоянию и продолжить работу
- git diff - увидеть разницу между текущим файлом и закоммиченным файлом
Для того, чтобы контроль версий начал рабоать надо выполнить команду git init в папке с репозиторием и у Вас создаться репозиторий (появится скрытая папка .git). Скрытую папку можно увидеть с помощью команды ls -a.
- Для того, чтобы посмотреть состояние репозитория используется команда git status. . Чтобы увидеть какие изменения произощли в файлах необходимо в папке с репозиторием написать git status.
- Команда git add используется для того, чтобы зафиксировать изменения в файлах, только после фиксирования изменений их можно будет сохранить.
- Для того, чтобы создать коммит(сохранение) необходимо выполнить команду git commit. Выполняется она так: git commit -m "<сообщение к коммиту>". Все файлы для коммита должны быть ДОБАВЛЕНЫ командой git add и сообщение к коммиту писать ОБЯЗАТЕЛЬНО.
- Для того, чтобы перемещаться между коммитами, используется команда git checkout. Используется она в папке с пепозиторием следующим образом: git checkout <номер коммита>.
- Для того, чтобы посмтреть все сделанные изменения в репозитории, используется команда git log. Для этого достаточно выполнить команду git log в папке с репозиторием.
- Для того, чтобы создать ветку, используется команда git branch. Делается это следующим образом в папке с репозиторием: git branch <название новой ветки>.
- Для того чтобы дабавить ветку в текущую ветку используется команда git merge.
- Для удаления ветки ввести команду "git branch -d 'name branch'".
Чтобы работать с удаленным репозиторем нужен сервис GitHub. Нужно понимать разницу между Git и GitHub:
Git - это программа, которая устанавливается на компьютер, где локально выполняет указанные вами команды. GitHub - это сервис компании Microsoft, который позволяет интегрироваться с программой Git и настроить удалённую работу с вашим репозиторием.
Таким образом, можно работать локально или хранить свой репозиторий на GitHub, используя команды, входящие в программу Git.
Освоить работу с удаленными репозиториями, которые находятся не на локальной, а на удаленной машине, например, на сервере. Копировать внешний репозиторий на свой ПК можно командой git clone и добавить адрес репозитория, который хотим скачать на ПК.
Команда git pull позволяет скачать все из текущего репозитория и автоматически сделать merge (слияние) с нашей версией.
Команда git push позволяет отправить нашу версию репозитория на внешний репозиторий. ТРЕБУЕТ АВТОРИЗАЦИИ на внешнем репозитории.
Такая команда как pull request делает запрос на вливание изменений в репозиторий. Например, больших компаниях один ответственный за проект создает аккаунт. Другие пользователи дают команду pull request. Предлагать изменения на GitHub нужно в отдельной ветке. Сначала пользователь копирует репозиторий на свой компьютер, делает fork репозитория, затем клонирует версию на своём ПК, создаёт ветку с предлагаемыми изменениями, отправляет изменения командой push в свой аккаунт на GitHub и даёт команду pull request.
Как сделать pull request:
- Делаем (ответвление) репозитория fork;
- Делаем git clone версии репозитория СВОЕЙ;
- Создаем новую ветку и в НЕЕ вносим свои изменения;
- Фиксируем изменения (делаем коммиты);
- Отправляем свою версию в свой GitHub;
- На сайте GitHub нажимаем кнопку pull request.