Git avancé
Amanda Crawford-Adamo
Software and Data Engineer
Sous-module Git
git submodule

Ajouter un sous-module à l'aide du lien ou du répertoire sous le dossier de chemin.
git submodule add <repository link|dir> <path>
$$
Exemple
Ajoute la bibliothèque de validation des données au projet ETL sous le dossier libs/validator du dépôt ETL.
git submodule add https://github.com/example/data-validator.git libs/validator
Lister tous les sous-modules d'un projet
git submodule status
Exemple
$ git submodule status
e1f2...7w8x9 data_cleaning_lib
a1b2...q7r8 api_connector
d9e8...t3u2 visualization_toolkit
Mettre à jour un sous-module avec les derniers changements
Plusieurs options :
git submodule update --init
git submodule update --init --remote
git submodule update --init <path_to_submodule>
Processus pour supprimer un sous-module
git submodule deinit <submodule_name>
git rm <path>
Copier tous les fichiers à inclure dans le nouveau dépôt de sous-module dans un autre dossier à l'extérieur du dépôt.
Dans le nouveau dossier, créer un nouveau dépôt pour le sous-module :
git init <new-submodule>
Utiliser git filter-repo pour extraire les fichiers et l'historique pertinents du projet principal :
git filter-repo --path <extract_path> --invert-paths
Ajouter le dépôt extrait comme sous-module au projet principal :
git submodule add <new-submodule_path> <path_to_store_submodule>
Cas d'utilisation :
Bons procédés :
Git avancé