Advanced Git
Amanda Crawford-Adamo
Software and Data Engineer
Git submodul
git submodule

Přidání submodulu pomocí odkazu nebo adresáře do zadané cesty.
git submodule add <repository link|dir> <path>
$$
Příklad
Přidá knihovnu data validator do projektu ETL ve složce libs/validator repozitáře ETL.
git submodule add https://github.com/example/data-validator.git libs/validator
Výpis všech submodulů v projektu
git submodule status
Příklad
$ git submodule status
e1f2...7w8x9 data_cleaning_lib
a1b2...q7r8 api_connector
d9e8...t3u2 visualization_toolkit
Aktualizace submodulu na nejnovější změny
K dispozici jsou tyto možnosti:
git submodule update --init
git submodule update --init --remote
git submodule update --init <path_to_submodule>
Postup odebrání submodulu
git submodule deinit <submodule_name>
git rm <path>
Zkopírujte všechny soubory pro nový submodul do složky mimo repozitář.
V nové složce vytvořte repozitář pro submodul:
git init <new-submodule>
Použijte git filter-repo k extrakci příslušných souborů a historie z hlavního projektu:
git filter-repo --path <extract_path> --invert-paths
Přidejte extrahovaný repozitář jako submodul do hlavního projektu:
git submodule add <new-submodule_path> <path_to_store_submodule>
Případy použití:
Osvědčené postupy:
Advanced Git