← До списку лабораторних по Git
Повний опис / сценарій лабораторної:
Meta: навчитися комфортно розвʼязувати конфлікти з допомогою merge tool замість ручного редагування лише у текстовому редакторі. Krok 1. Створити ситуацію конфлікту між двома гілками. Komandi: cd ~/git_lab1; git switch -c conflict89-main; echo "base" > conflict89.txt; git add conflict89.txt; git commit -m "Base conflict file" Krok 2. Створити гілку conflict89-a і змінити рядок. Komandi: git switch -c conflict89-a; echo "change from A" > conflict89.txt; git commit -am "Change from A" Krok 3. Повернутися на conflict89-main і створити іншу гілку conflict89-b. Komandi: git switch conflict89-main; git switch -c conflict89-b; echo "change from B" > conflict89.txt; git commit -am "Change from B" Krok 4. Змерджити conflict89-a у conflict89-main. Komandi: git switch conflict89-main; git merge conflict89-a Krok 5. Спробувати змерджити conflict89-b у conflict89-main щоб отримати конфлікт. Komanda: git merge conflict89-b Krok 6. Переглянути статус з конфліктами. Komanda: git status Krok 7. Налаштувати merge tool у конфігурації Git якщо ще не налаштований. Komanda: git config --global merge.tool vimdiff Poyasnennya: можна використати будь який зручний інструмент. Krok 8. Запустити merge tool для проблемного файла. Komanda: git mergetool conflict89.txt Poyasnennya: у вікні покажуться версії local, remote і base. Krok 9. Після розвʼязання конфлікту завершити merge. Komandi: git add conflict89.txt; git commit -m "Resolve conflict89 with mergetool" Krok 10. Mini zvit. Zavdannya: опиши переваги merge tool для великих файлів з великою кількістю конфліктних блоків.