Introduction
🧑💻 Nouveau dans Git ou LabEx? Nous vous recommandons de commencer par le cours Quick Start with Git.
Lorsque vous travaillez avec Git, il est courant de créer et de basculer vers des branches détachées. Ces branches ne sont pas associées à une branche spécifique et sont généralement utilisées pour les tests ou l'expérimentation. Cependant, au fil du temps, ces branches peuvent s'accumuler et encombrer votre référentiel. Dans ce laboratoire, vous allez apprendre à supprimer toutes les branches détachées de votre référentiel Git.
Supprimer les branches détachées
Vous disposez d'un référentiel Git avec plusieurs branches détachées que vous n'avez plus besoin. Ces branches encombrent votre référentiel et le rendent difficile à gérer. Vous souhaitez supprimer toutes les branches détachées pour nettoyer votre référentiel.
Pour terminer ce laboratoire, vous utiliserez le référentiel Git git-playground de votre compte GitHub, qui provient d'un fork de https://github.com/labex-labs/git-playground.git. Ne cochez pas "Copier seulement la branche master".
- Clonez le référentiel, accédez au répertoire et configurez l'identité :
git clone https://github.com/your-username/git-playground.git
cd git-playground
git config --global user.name "your-username"
git config --global user.email "your-email"
- Puisque la branche
feature-branchexiste dans le référentiel distant, basculez versfeature-branch, ce qui fera en sorte que la branchefeature-branchlocale suive la branchefeature-branchdu référentiel distant et supprime la branchefeature-branchdans le référentiel distant :
git checkout feature-branch
git push origin --delete feature-branch
- Affichez la relation de suivi entre les branches locales et les branches distantes qu'elles suivent :
git branch -vv
- Revenez sur la branche
master:
git checkout master
- Supprimez toutes les branches détachées de votre référentiel local :
git branch -vv | grep ': gone]' | awk '{print $1}' | xargs git branch -D
- Vérifiez que les branches détachées ont été supprimées :
git branch
La sortie devrait ne montrer que les branches associées à une branche spécifique :
* master d22f46b [origin/master] Added file2.txt
Résumé
Supprimer les branches détachées est une étape importante pour maintenir votre référentiel Git organisé et facile à gérer. En utilisant la commande git branch -vv | grep ': gone]' | awk '{print $1}' | xargs git branch -D, vous pouvez facilement supprimer toutes les branches détachées de votre référentiel local. Cela vous aidera à maintenir votre référentiel propre et à le rendre plus facile à utiliser à l'avenir.