Введение
Git – это консольная утилита, для отслеживания и ведения истории изменения файлов, в вашем проекте. Чаще всего его используют для кода, но можно и для других файлов. Например, для картинок - полезно для дизайнеров.
С помощью Git-a вы можете откатить свой проект до более старой версии, сравнивать, анализировать или сливать свои изменения в репозиторий.
Репозиторием называют хранилище вашего кода и историю его изменений. Git работает локально и все ваши репозитории хранятся в определенных папках на жестком диске.
Так же ваши репозитории можно хранить и в интернете. Обычно для этого используют три сервиса:
- GitHub
- Bitbucket
- GitLab
Каждая точка сохранения вашего проекта носит название коммит (commit). У каждого commit-a есть hash (уникальный id) и комментарий. Из таких commit-ов собирается ветка. Ветка - это история изменений. У каждой ветки есть свое название. Репозиторий может содержать в себе несколько веток, которые создаются из других веток или вливаются в них.
Установка Git-а
- Windows
- Официальная сборка (при установке оставляйте всё дефолтным – не прогадаете)
- Mac OS
- нужно попробовать выполнить команду
git --version
. если Git-а нет, то предложит установить - но вот официальная сборка на всякий случай
- нужно попробовать выполнить команду
- Linux
sudo apt install git
Кроме всего прочего, давайте посмотрим на этот ресурс.
GitLab
- Регаемся на GitLab
## Выше было введение, теперь рассмотрим коллективную работу
Ветка – это набор commit (обычно кружки), которые идут друг за другом. У ветки есть название, основную ветку чаще всего называют master или main (Почему master повсеместно заменяется на main?). Если говорить простыми словами, то ветка master – это наш проект.
Другие ветки – это отдельное место для реализации нового функционала или исправление багов (ошибок) нашего проекта. То есть, с отдельной веткой вы делаете что угодно, а затем сливаете эти изменения в основную ветку master.
Не рекомендуется создавать commit напрямую в master . Лучше для этого заводить новую ветку и все изменения писать там. ——————————————————————————–
Для того, чтобы создать новую ветку вводим:
git branch <название_ветки>
или вот так
git checkout -b <название_ветки>
Эти команды делают тоже самое, только второй вариант позволяет сразу переключиться в новую ветку. Вносить изменения в новую ветку можно сразу после ее создания.
При создании новой ветки, старайтесь называть ее кратким и ёмким именем. Чтобы сразу было понятно, что именно изменялось по проекту. Если вы используете, какую-нибудь систему для ведения задач, то можете в начале названия ветки указывать ID задачи, чтобы можно было легко найти, на основе какой задачи была создана ветка. Например вот так:
dev-3334_fix_catalog_endpoints
Для того чтобы посмотреть текущее состояние ветки, например, какие файлы добавлены или не добавлены для создания commit, можно выполнить команду:
git status
После того, как завершили работу над своей задачей, ветку можно слить в master
/main
. Для этого нужно переключиться в ветку master
и выполнить следующее:
Переключаемся в master
git pull origin master
git push
Теперь склонировать репозитрий ещё раз и смоделировать как происходила бы работа вдвоем, коммитя в две директории на локальном компе ———————————————————————-
Вспомогательные команды Просмотреть изменения относительно двух веток можно командой:
git diff <исходная_ветка> <целевая_ветка>
Удалить ненужную ветку:
git branch -d <название_ветки>
Просмотр историю ветки:
git log
Команды, которые надо знать
- git help
- git clone
- git status
- git branch
- git checkout
- git merge
- git remote
- git push
- git pull