← До списку лабораторних по Git
Повний опис / сценарій лабораторної:
Мета: навчитися створювати текстові патчі з комітів і застосовувати їх у іншому репозиторії або клоні. Крок 1. Зробити кілька тестових комітів для патчів. Команди: cd ~/git_lab1; echo "patch line 1" >> patch42.txt; git add patch42.txt; git commit -m "Patch step one"; echo "patch line 2" >> patch42.txt; git add patch42.txt; git commit -m "Patch step two" Крок 2. Створити патчі для двох останніх комітів. Команда: git format-patch -2 Пояснення: зʼявляться файли типу 0001-*.patch, 0002-*.patch. Крок 3. Переглянути вміст одного патча. Команда: less 0001-*.patch Пояснення: патч містить заголовки email стилю та diff. Крок 4. Створити новий клон для тесту застосування патчів. Команда: cd ~ && git clone ~/git_lab1 git_lab1_patch_target && cd git_lab1_patch_target Крок 5. Перевірити що останні два коміти відсутні у клоні. Команда: git log --oneline -n 5 Пояснення: у цільовому клоні історія коротша. Крок 6. Скопіювати патч файли у каталог target. Команда: cp ~/git_lab1/000*.patch . Крок 7. Застосувати патчі через git apply. Команда: git apply 0001-*.patch 0002-*.patch Пояснення: зміни зʼявляться у робочому каталозі без комітів. Крок 8. Закомітити застосовані зміни вручну. Команди: git add patch42.txt; git commit -m "Apply patches manually" Крок 9. Повторити процедуру але використати git am для автоматичного створення комітів. Команда: git am 0001-*.patch 0002-*.patch Пояснення: у окремому тестовому клоні буде відтворено коміти з оригіналу. Крок 10. Міні звіт. Завдання: опишіть де у реальних умовах ви можете використати format-patch та am замість push і pull.