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

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

Git Лабораторна 63: Робота з версіями в submodule

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

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

Тема: Оновлення і фіксація версії підмодуля

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

Meta: навчитися оновлювати підмодуль до нових комітів і фіксувати конкретну версію у основному репозиторії.



Krok 1. Перейти до репозиторію з підмодулем.

Komanda: cd ~/git_lab1



Krok 2. Зайти у каталог підмодуля.

Komanda: cd external/sub62



Krok 3. Зробити новий коміт у підмодулі.

Komandy: echo "submodule v2" >> subfile.txt; git add subfile.txt; git commit -m "Update submodule to v2"



Krok 4. Повернутися у корінь основного репозиторію.

Komanda: cd ~/git_lab1



Krok 5. Перевірити статус, Git покаже зміну у підмодулі.

Komanda: git status

Poyasnennya: підмодуль відмічений як modified з новим комітом.



Krok 6. Закомітити оновлення підмодуля.

Komanda: git commit -am "Point submodule to new commit"

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



Krok 7. Показати різницю у посиланнях підмодуля між комітами.

Komanda: git diff HEAD~1 HEAD -- external/sub62

Poyasnennya: видно старий і новий хеш.



Krok 8. Відкотити підмодуль до попередньої версії.

Komandy: cd external/sub62; git checkout ХЕШ_СТАРОГО_КОМІТУ; cd ..; git add external/sub62; git commit -m "Revert submodule to previous version"



Krok 9. Описати у нотатках як у режимі only fast forward оновлювати підмодуль з upstream.



Krok 10. Mini zvit.

Zavdannya: поясни як у прод середовищі контролювати версію бібліотеки через підмодуль, щоб уникнути випадкових оновлень.