Ключевые концепции

Слияние

В Git слияние (англ. merging) — это процесс объединения изменений из одной ветки в другую. Обычно это делается, когда новая функция или исправление ошибки завершены в отдельной ветке и их нужно добавить в основную ветку проекта main. Слияние позволяет собрать вместе наработки из разных веток, создавая единую версию кода со всеми обновлениями.

Слияние — важнейшая операция в Git, так как она делает возможной совместную разработку и параллельную работу над разными задачами. Работая в отдельных ветках, разработчики могут писать код независимо, не мешая друг другу. Как только работа в ветке завершена и протестирована, её можно слить обратно в main, чтобы изменения стали доступны всем.

При выполнении слияния Git автоматически пытается объединить изменения из исходной ветки в целевую. Если изменения не конфликтуют друг с другом (то есть затрагивают разные части кода), Git выполнит слияние в режиме fast-forward, просто переместив указатель целевой ветки на последний коммит исходной ветки.

Однако если есть конфликтующие изменения (когда в обеих ветках изменены одни и те же строки кода), Git остановится, сообщит о конфликте слияния и предложит тебе разрешить его вручную перед завершением операции. Для этого нужно просмотреть конфликтующие участки, решить, какие изменения оставить, и отредактировать код.

Примеры

Допустим, ты работаешь над веб-приложением и нужно написать новую функцию регистрации пользователей. Ты создаёшь новую ветку login-form-feature для этой задачи:

Запустить в терминале:
git switch -c login-form-feature

Когда новая функция готова и протестирована, её нужно слить обратно в ветку main:

Запустить в терминале:
git switch main
git merge login-form-feature

Git попытается влить изменения из ветки login-form-feature в main. Если конфликтов нет, слияние завершится автоматически.