[[oktatas:programozas:verziokontroll:git|< Git]]
====== Git almodulok ======
* **Szerző:** Sallai András
* Copyright (c) 2023, Sallai András
* Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]]
* Web: https://szit.hu
===== Felvetés =====
* Készítsünk egy tri_api projektet.
* Készítsünk egy tri_web projektet.
Mindkettőt külön fejlesztjük, de a végén egyben szeretnénk látni.
* Készítünk egy tri projektet.
* A tri_api és a tri_web projektet felveszem almdoulként.
Példa:
* https://github.com/pendes/tri
===== Fő projekt létrehozása =====
mkdir tri
cd tri
git init
===== Almodulok felvétele =====
Ha GitHub szerveren vannak az almondulok:
git submodule add https://github.com/valaki/tri_api.git
git submodule add https://github.com/valaki/tri_web.git
===== Feltöltés GitHubra =====
Megkapjuk helyben a két projektet. git add, git commit, majd git push.
git status -u
git add .
git commit -m "Összevonva"
git push origin master
Ezt követően a GitHubon mindkét projektre mutat egy link a tri tárolóból.
===== Klónozás =====
Ha szeretném egyben letölteni a két projektet, szükség
van a --recurse-submodules kapcsolóra, másként
nem töltődik le a két projekt tartalma, csak üres könyvtárak jönnek létre:
git clone --recurse-submodules https://github.com/valaki/tri.git
Az almodulok letöltve nem fejleszthetők! Fejlesztéshez külön kell letölteni a fejleszteni kívánt altárolót. Csak használatra jó.
===== Link =====
* https://git-scm.com/book/en/v2/Git-Tools-Submodules (2023)