← До списку лабораторних по Git
Повний опис / сценарій лабораторної:
Мета: навчитися переносити конкретні зміни з однієї гілки в іншу без merge всіх комітів. Крок 1. Створити експериментальну гілку. Команди: cd ~/git_lab1; git switch -c experiment-branch Крок 2. Внести зміну і зробити коміт. Команди: echo "important fix" >> cherry.txt; git add cherry.txt; git commit -m "Important fix only for experiment" Крок 3. Подивитися хеш цього коміту. Команда: git log --oneline -n 1 Пояснення: запишіть короткий хеш для cherry-pick. Крок 4. Перемкнутися назад у основну гілку. Команда: git switch main Крок 5. Перевірити що cherry.txt у основній гілці ще не існує. Команда: ls cherry.txt 2>/dev/null || echo "файла немає" Крок 6. Виконати git cherry-pick. Команда: git cherry-pick ХЕШ_КОМІТУ Пояснення: Git застосує зміни з вибраного коміту до поточної гілки. Крок 7. Перевірити вміст cherry.txt. Команда: cat cherry.txt Пояснення: файлу тепер відповідають зміни з експериментальної гілки. Крок 8. Подивитися історію. Команда: git log --oneline -n 3 Пояснення: коміт зʼявляється і в main, але з тим самим повідомленням. Крок 9. Обговорити що буде якщо cherry-pick викликає конфлікт. Пояснення: Git зупиниться, доведеться вирішити конфлікти і продовжити cherry-pick. Крок 10. Міні звіт. Завдання: опишіть сценарій коли cherry-pick зручніший за merge для гарячого виправлення у production гілці.