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

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

Git Лабораторна 17: Додавання та оновлення submodule

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

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

Тема: Submodule: підмодулі в репозиторії

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

Мета: навчитися підʼєднувати інший репозиторій як підмодуль, оновлювати його і клонувати проєкт з підмодулями.



Крок 1. Створити другий тестовий репозиторій який буде підмодулем.

Пояснення: можна створити простий репозиторій з одним файлом всередині.



Крок 2. У головному репозиторії додати підмодуль.

Команда: cd ~/git_lab1 && git submodule add URL_SUBMODULE vendor/subproj

Пояснення: замініть URL_SUBMODULE на адресу тестового репозиторію.



Крок 3. Перевірити зміни у статусі.

Команда: git status

Пояснення: зʼявиться каталог vendor/subproj та файл .gitmodules.



Крок 4. Закомітити підмодуль.

Команди: git add .gitmodules vendor/subproj; git commit -m "Add submodule subproj"



Крок 5. Клонувати головний репозиторій у нову директорію без ініціалізації підмодулів.

Команда: cd ~ && git clone URL_MAIN git_lab1_clone

Пояснення: всередині підмодуль буде порожнім каталогом.



Крок 6. Ініціалізувати та оновити підмодулі у клоні.

Команда: cd git_lab1_clone && git submodule update --init --recursive

Пояснення: підмодуль буде завантажений у відповідний каталог.



Крок 7. Перевірити поточний коміт підмодуля.

Команда: cd vendor/subproj && git log --oneline -n 1



Крок 8. Оновити підмодуль до нового коміту.

Пояснення: зробіть новий коміт у субпроєкті, а потім у головному репозиторії виконайте git submodule update --remote.



Крок 9. Закомітити оновлення посилання на підмодуль у головному репозиторії.

Команда: cd ~/git_lab1 && git add vendor/subproj; git commit -m "Update submodule subproj to latest commit"



Крок 10. Міні звіт.

Завдання: опишіть плюси і мінуси використання підмодулів у великому монорепозиторії.