ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Руководство по Git, часть 2: Ветвление и слияние с Git

Руководство по Git. Часть 1. Введение в Git и базовую настройку

В предыдущем разделе были рассмотрены основы Git, такие как установка и настройка Git, создание репозитория и выполнение первого коммита. Теперь давайте рассмотрим одну из самых мощных функций Git: ветвление и слияние.

 

Что такое ветвление?

Ветвление в Git – это, по сути, ссылка на конкретный коммит. При работе над проектом основная ветвь обычно называется main или master, но вы можете создавать дополнительные ветви для работы над функциями, исправлениями или экспериментами, не затрагивая ветвь “main“.

Ветви позволяют вам:

 

Создание и использование ветвей

1. Создание новой ветки

Предположим, вы хотите создать новую функцию под названием “new-feature“. Чтобы инициировать новую ветку и переключиться на нее.:

git checkout -b new-feature

 

 

Чтобы просмотреть все ветви в вашем репозитории:

git branch

 

2. Работа над веткой

Вы можете редактировать, создавать этапы и фиксировать в своей ветке так же, как и в основной ветке. В качестве примера:

1. Измените существующий файл или создайте новый.

2. Подготовьте файл:

git add <filename>

 

3. Зафиксируйте изменения:

git commit -m "Adding new feature implementation"

 

Все эти изменения теперь внесены в ветку “новые функции“, в то время как ваша основная ветка остается неизменной.

 

3. Переключение между ветвями

Вы можете вернуться в основную ветку (или любую другую ветку), используя:

git checkout main

 

Теперь вы вернулись в основную ветку, и любые внесённые вами изменения повлияют на неё.

 

Слияние ветвей

Как только вы будете довольны изменениями в своей функциональной ветке, объедините её с основной веткой.

1. Слияние ветви

Как объединить new-feature в ветку main:

1. Сначала убедитесь, что вы находитесь на «главной» ветке:

git checkout main

 

2. Объедините new-feature ветку:

git merge new-feature

 

Git объединит изменения из ветки new-feature с веткой main. Если конфликтов не будет, Git выполнит слияние автоматически.

 

2. Обработка конфликтов слияния

Изменения в разных ветках иногда могут конфликтовать. Например, если одна и та же строка кода редактируется в обеих ветках, Git не будет знать, какое изменение сохранить, что приведёт к конфликту слияния.

Когда это произойдет:

1. Git отметит конфликт в затронутых файлах. Вы увидите что-то вроде этого.

   <<<<<<< HEAD
ваши изменения в главной ветке
   =======
изменения в ветке "новая функция"
   >>>>>>> new-feature

 

2. Вам нужно вручную отредактировать файл, чтобы решить, какие изменения оставить. Вы можете оставить изменения из одной ветки или объединить их.

3. После того, как вы разрешите конфликт, создайте файл:

git add <filename>

 

4. Завершите слияние с помощью:

git commit

 

 

Удаление ветки

Это удаляет ветку new-feature из вашего локального репозитория. Вы можете безопасно удалять ветки после их слияния с main.

git branch -d new-feature

 

Это удаляет ветку new-feature из вашего локального репозитория. Вы можете безопасно удалять ветки после их слияния с main.

 

Краткое описание ключевых команд

 

Заключение

В этом разделе мы рассмотрели, как создавать, переключать и объединять ветви, а также как обрабатывать конфликты слияния. Ветвление позволяет вам работать над различными функциями параллельно, не нарушая основной проект.

В части 3 мы обсудим, как работать с удаленными репозиториями на таких платформах, как GitHub и Gitlab.

Exit mobile version