Урок 38 із 65
58%
← Назад

Злиття гілок

Об'єднання змін з однієї гілки в іншу за допомогою команди git merge.

Злиття гілок у Git

Нові гілки зазвичай створюють для виконання окремої задачі. Після завершення роботи зміни з цієї гілки можна перенести в основну гілку за допомогою команди git merge.

Команда git merge не об'єднує дві гілки в одну. Вона переносить зміни з однієї гілки до іншої. При цьому вихідна гілка продовжує існувати.

Підготовка змін

Спочатку переходимо в робочу гілку, вносимо зміни, додаємо їх до індексу та створюємо коміт.

git switch test
git add file.txt
git commit -m "Commit from test"

Злиття з основною гілкою

Після цього потрібно повернутися в основну гілку та виконати злиття.

git switch main
git merge test

Якщо основна гілка має назву master, використовуйте git switch master замість git switch main.

Після успішного злиття зміни з гілки test з'являться в основній гілці, але сама гілка test нікуди не зникне.

main

A ───── B

         ▲
         │ git merge test
         │

test

A ───── B ───── C
❗ Важливо:

Після виконання git merge робоча гілка не видаляється. Ви можете й надалі працювати в ній та повторно переносити нові зміни до основної гілки.

📌 Завдання:
  1. Створіть нову гілку problem.
  2. Перейдіть у гілку problem.
  3. Створіть новий файл, додайте його до індексу та створіть коміт.
  4. Поверніться до основної гілки та виконайте git merge problem.
  5. Знову перейдіть у гілку problem.
  6. Змініть файл, додайте зміни та створіть ще один коміт.
  7. Повторно виконайте git merge problem в основній гілці.
💡 Показати підказку

Команду git merge потрібно виконувати в тій гілці, в яку ви хочете перенести зміни.

✅ Показати відповідь
Відповідь:

Створити та відкрити нову гілку:

git branch problem
git switch problem


Створити файл, додати його та створити коміт:

git add .
git commit -m "Add file"


Повернутися в основну гілку:

git switch main

або

git switch master


Влити зміни:

git merge problem


Після нових змін у problem:

git switch problem
git add .
git commit -m "Update file"


Знову перейти в основну гілку:

git switch main

або

git switch master


Повторно виконати:

git merge problem