HOWTO · Git

Tirez le dernier sous-module Git

Dans cet article, nous présenterons les sous-modules Git.

Sur cette page

Dans cet article, nous présenterons les sous-modules Git. Sous cela, nous couvrirons ce qui suit.

  1. Les étapes à suivre pour extraire le dernier sous-module.
  2. Comment configurer un sous-module.
  3. Comment vous pouvez envoyer des mises à jour dans un sous-module Git.
  4. Comment cloner un sous-module.

Travailler avec Git vous permet de créer des sous-modules dans un référentiel parent. Ces sous-modules sont des référentiels enfants stockés dans le répertoire du référentiel parent.

Voyons comment configurer et extraire le dernier sous-module.

Tirez le dernier sous-module Git

La commande ci-dessous lance un sous-module dans notre référentiel.

git submodule update --init --recursive

Pour extraire le dernier sous-module, utilisez la commande ci-dessous.

Pour les versions 1.8.2 et ultérieures de Git :

git submodule update --recursive --remote

Pour les versions 1.7.3 et supérieures de Git, utilisez :

git submodule update --recursive

Une commande alternative est :

git pull --recurse-submodules

Pousser les mises à jour vers un sous-module Git

Git traite les sous-modules comme des dépôts séparés. Nous pouvons donc lancer la commande git push dans le répertoire du sous-module.

Si vous exécutez la commande git status dans votre référentiel parent, vous devriez trouver votre sous-module dans la section Changes not staged for commit. Avant de pousser les mises à jour, vous devez exécuter les commandes git add et git commit.

Cloner un sous-module Git

Vous pouvez cloner un projet contenant des sous-modules avec la commande git clone. Cependant, la commande ne clonera que les répertoires sans les fichiers.

Exécutez git submodule init pour mettre à jour votre configuration Git locale et les fichiers de modules afin de remédier à la situation. Exécutez ensuite la commande git submodule update pour récupérer les données de votre référentiel parent.

Les sous-modules Git vous aident à organiser vos projets. Cependant, nous vous déconseillons d’utiliser des sous-modules dans tous vos projets car le concept est délicat.