może być nieco off topic, tylko nadal istotne dla pytanie:
https://git-scm.com/book/en/v2/Git-Tools-Submodules
Submodules Git są repozytoriami git, które można wykorzystać w innych repozytoriach (zwanych dalej Supermodules). Z każdym modułem częściowym posiadającym zwykły asortyment cech i znaczników gałęzi, korzyść wynika z tego, że każdy supermoduł jest wersjonowanym, wtykowym komponentem, który może być przetwarzany oddzielnie lub rozwijany razem z supermodułem.
kilka przydatnych poleceń
Aby dodać submodule, należy uruchomić następujące wewnątrz SuperModułem:
git submodule add <url-to-submodule-repo>
modułem (y) nadal muszą być inicjowane i idące z repo:
git submodule init git submodule update
SuperModule z submodułów mogą być klonowane i wszystkie Submoduły naciągane przez wykonanie:
git clone --recursive <url-to-supermodule>
można wyciągnąć upstream zmian w gałęzi modułem poprzez uruchomienie następujących wewnątrz katalogu submodule:
git fetch
Następnie uruchom następujące aktualizacje, aby zaktualizować kod lokalny:
git merge
Poniższa pobierze i scalania dla wszystkich submodules w swojej SuperModułem:
git submodule update --remote
Jeśli chcesz śledzić konkretny oddział modułem można użyć następujących:
git config -f .gitmodules submodule.<my-submodule>.branch fantastic_new_implementation
Jeśli pracowałeś nad supermodules i submodułami i popychałeś swój supermoduł, zmiany wprowadzone w submodułach będą istniały tylko lokalnie, a ci, z którymi współpracujesz, nie będą wiedzieli o tych zmianach. Poniższa komenda będzie sprawdzić, czy Submoduły zostały zepchnięte przed przystąpieniem do pchania SuperModule
git push --recurse-submodules=check
Wreszcie, tutaj jest przydatna ForEach komenda, która pozwala nam uruchomić polecenie za każdym modułem
git submodule foreach 'git checkout -b featureA
Dziękujemy! To działa. – Ceridan