← До списку лабораторних по Git
Повний опис / сценарій лабораторної:
Мета: навчитися використовувати git subtree як більш простий підхід до керування залежними репозиторіями. Крок 1. Переконатися що у вас є окремий репозиторій який буде джерелом subtree. Пояснення: можна повторно використати невеликий тестовий репозиторій. Крок 2. У основному репозиторії додати remote для цього джерела. Команда: cd ~/git_lab1 && git remote add lib_remote URL_LIB Пояснення: замініть URL_LIB на адресу додаткового репозиторію. Крок 3. Забрати гілку з цього remote. Команда: git fetch lib_remote Крок 4. Додати subtree у підкаталог libs/subtree_lib. Команда: git subtree add --prefix=libs/subtree_lib lib_remote main --squash Пояснення: історія бібліотеки буде зведена до одного коміту. Крок 5. Перевірити структуру каталогу. Команда: ls libs/subtree_lib Крок 6. Зробити локальну зміну у subtree каталозі. Команди: echo "local tweak" >> libs/subtree_lib/info.txt; git add libs/subtree_lib; git commit -m "Local change in subtree" Крок 7. Оновити джерело lib_remote новими комітами. Пояснення: у реальному житті це роблять автори бібліотеки, для лабораторії можна створити коміти у вихідному репозиторії. Крок 8. Підтягнути оновлення у subtree. Команда: git subtree pull --prefix=libs/subtree_lib lib_remote main --squash Пояснення: зміни з джерела змішуються з локальними у одному дереві. Крок 9. Подивитися історію комітів повʼязаних з subtree. Команда: git log --oneline -- libs/subtree_lib Крок 10. Міні звіт. Завдання: порівняйте підхід subtree з підмодулями у контексті деплою і зручності для інших розробників.