← До фільтрів та технологій

← До списку лабораторних по Git

Git Лабораторна 23: Розвʼязання merge конфліктів

Технологія: Git

Номер лабораторної: 23 · Рівень: middle

Тема: Конфлікти злиття у текстових файлах

Повний опис / сценарій лабораторної:

Мета: навчитися усвідомлено створювати та вирішувати конфлікти злиття у текстових файлах, розуміти маркери конфлікту.



Крок 1. Створити нову гілку conflict-branch.

Команди: cd ~/git_lab1; git switch -c conflict-branch



Крок 2. Змінити один і той самий рядок у readme.txt.

Команда: echo "line from conflict-branch" > conflict.txt; git add conflict.txt; git commit -m "Add conflict line from branch"



Крок 3. Повернутися в основну гілку.

Команда: git switch main



Крок 4. Створити іншу зміну у тому самому файлі.

Команди: echo "line from main branch" > conflict.txt; git add conflict.txt; git commit -m "Add conflict line from main"



Крок 5. Спробувати злити conflict-branch в main.

Команда: git merge conflict-branch

Пояснення: має виникнути конфлікт у conflict.txt.



Крок 6. Відкрити файл conflict.txt у редакторі.

Пояснення: зверніть увагу на маркери <<<<<<<, =======, >>>>>>> які Git додав.



Крок 7. Вручну вирішити конфлікт, вибравши або обʼєднавши рядки.

Пояснення: залиште кінцеву версію тексту без маркерів конфлікту.



Крок 8. Позначити конфлікт як вирішений.

Команди: git add conflict.txt; git status

Пояснення: файл переходить у секцію ready to commit.



Крок 9. Завершити merge.

Команда: git commit -m "Resolve conflict between main and conflict-branch"



Крок 10. Міні звіт.

Завдання: опишіть власний алгоритм дій коли ви отримуєте конфлікт злиття у великому файлі з багатьма рядками.