Travailler avec les modifications des sous-modules
Parfois, vous devez travailler avec des modifications à l'intérieur d'un sous-module. Dans cette étape, nous allons apprendre à effectuer et à gérer les modifications au sein des sous-modules.
Naviguer dans le sous-module
Pour travailler avec un sous-module, vous devez naviguer dans son répertoire :
cd ~/project/main-repo/libs/libgit2-backends
À partir d'ici, vous pouvez utiliser les commandes Git standard pour afficher des informations sur le dépôt du sous-module :
git status
git log -3 --oneline
La commande git status affiche l'état actuel du dépôt du sous-module, et git log affiche les commits récents.
Effectuer des modifications dans un sous-module
Faisons une simple modification à un fichier dans le sous-module. Tout d'abord, créons un nouveau fichier :
echo "## My notes on libgit2-backends" > NOTES.md
Maintenant, vérifions l'état de notre modification :
git status
Vous devriez voir une sortie indiquant que vous avez un fichier non suivi :
Untracked files:
(use "git add <file>..." to include in what will be committed)
NOTES.md
Ajoutons et committons cette modification dans le sous-module :
git add NOTES.md
git commit -m "Add notes file"
Vous devriez voir une sortie confirmant votre commit dans le sous-module.
Vérification de l'état depuis le dépôt principal
Maintenant, revenons au dépôt principal et vérifions l'état :
cd ~/project/main-repo
git status
Vous devriez voir une sortie indiquant que le sous-module a été modifié :
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: libs/libgit2-backends (new commits)
Committing les modifications du sous-module dans le dépôt principal
Pour enregistrer le nouvel état du sous-module dans votre dépôt principal, vous devez ajouter et committer les modifications :
git add libs/libgit2-backends
git commit -m "Update libgit2-backends with notes file"
La sortie devrait indiquer que vous avez réussi à committer la nouvelle référence du sous-module.
Affichage des modifications détaillées du sous-module
Pour voir des informations plus détaillées sur les modifications dans les sous-modules, vous pouvez utiliser :
git diff --submodule
Cette commande affiche la plage de commits qui ont été ajoutés ou supprimés dans chaque sous-module modifié.
Résumé du travail avec les modifications des sous-modules
Lorsque vous travaillez avec des modifications dans un sous-module, souvenez-vous de ce flux de travail :
- Naviguez dans le répertoire du sous-module
- Effectuez et committez les modifications dans le sous-module
- Revenez au dépôt principal
- Ajoutez et committez la référence du sous-module mise à jour
Ce processus de commit en deux étapes (d'abord dans le sous-module, puis dans le dépôt principal) est essentiel pour suivre correctement les modifications apportées aux sous-modules.