Comment supprimer une branche Git, localement et à distance
Une branche locale et sa copie distante sont deux choses distinctes. Voici comment supprimer chacune d'elles, ce que signifient les erreurs courantes, comment nettoyer les références obsolètes et comment récupérer une branche que vous avez supprimée par erreur.
Écrit par Kodmora
L'éditeur de logiciels derrière GitTree
- Branches
- Dépôts distants et push
- Annuler et récupérer
Sur cette page
Pour supprimer une branche locale, exécutez `git branch -d branch-name`. Pour le supprimer sur le dépôt distant, exécutez `git push origin --delete branch-name`. Ce sont des actions distinctes : la suppression de l'une laisse l'autre en place. Git refuse la première commande si la branche a des commits qui ne sont pas fusionnés, ce qui protège votre travail.
| Objectif | Commande |
|---|---|
| Supprimer une branche locale fusionnée | git branch -d feature/search |
| Forcer la suppression d'une branche locale non fusionnée | git branch -D feature/search |
| Supprimer la branche sur le dépôt distant | git push origin --delete feature/search |
| Supprimer les références de suivi à distance obsolètes | git fetch --prune |
Comment supprimer une branche Git locale ?
Éloignez-vous d'abord, car Git ne supprimera pas la branche sur laquelle vous vous trouvez. Supprimez-le ensuite :
git switch main
git branch -d feature/searchGit imprime le dernier commit de la branche. Gardez ce hachage pendant un moment, car c'est le moyen le plus simple de revenir en arrière :
Deleted branch feature/search (was 4f2a9c1).Comment supprimer une branche distante ?
git push origin --delete feature/searchCela supprime la branche pour tous ceux qui utilisent ce dépôt distant, alors vérifiez que personne n'en a encore besoin et que sa demande d'extraction est fermée. Votre copie locale reste jusqu'à ce que vous la supprimiez également.
Que signifient les erreurs de suppression ?
| Message | Signification | Corriger |
|---|---|---|
not fully merged | La branche a des commits qui ne se trouvent pas en amont ou dans HEAD. | Fusionnez-le ou utilisez -D si vous êtes sûr de ne pas en avoir besoin. |
cannot delete branch … used by worktree | Vous êtes dessus, ici ou dans un autre arbre de travail. | Exécutez git switch main ou supprimez l'autre arbre de travail. |
remote ref does not exist | La branche a déjà disparu du dépôt distant. | Exécutez git fetch --prune pour effacer votre copie obsolète. |
Que fait git distant prune origin ?
Lorsque quelqu'un supprime une branche sur le dépôt distant, votre référentiel conserve sa référence origin/feature/search jusqu'à ce que vous la supprimiez. L'élagage supprime ces références obsolètes. Cela ne touche jamais vos agences locales :
git fetch --prune
# or, without fetching anything new
git remote prune originPour voir quelles branches locales ont perdu leur copie distante, recherchez gone dans la liste détaillée :
git branch -vvComment récupérer une branche supprimée ?
Une branche n'est qu'un nom pour un commit, donc sa suppression ne supprime pas immédiatement les commits. Créez à nouveau le nom à partir du hachage Git imprimé, ou recherchez-le dans le reflog :
git branch feature/search 4f2a9c1
# no hash? search the reflog
git reflogFaites-le bientôt : les commits inaccessibles sont finalement nettoyés par le garbage collection. L'article sur récupération d'une réserve supprimée ou d'une branche supprimée couvre les cas les plus difficiles, et la leçon sur les branches et le changement explique pourquoi une branche est si bon marché.
Comment supprimer une branche dans GitTree
Ouvrir le menu de l'agence
Cliquez avec le bouton droit sur l’étiquette de branche dans le graphique. Le menu nomme la branche dans chaque action.
Choisissez Supprimer
GitTree indique ce qui est supprimé et que le dernier commit est enregistré sous
refs/ogt/trash. Annuler est la valeur par défaut, alors appuyez sur Supprimer la fonction/recherche pour confirmer.Supprimez également la copie distante
Delete… et origin/… suppriment les deux, confirmé avec Delete Both. Une branche supprimée sur le dépôt distant ne peut pas être ramenée de GitTree.
Vous avez changé d'avis ?
Appuyez sur Annuler dans la barre d'outils juste après une suppression locale pour restaurer la branche.
Le guide pour renommer et supprimer des branches contient les détails, et comment renommer une branche couvre à la place la modification d'un nom.

Questions fréquemment posées
La suppression d'une branche supprime-t-elle ses commits ?
Pas tout de suite. Les commits sur les autres branches restent. Les validations uniquement sur cette branche deviennent inaccessibles et peuvent être récupérées jusqu'à ce que le garbage collection les supprime.
Quelle est la différence entre git branch -d et -D ?
-d refuse de supprimer une branche avec des validations non fusionnées. -D le supprime quand même, alors utilisez-le uniquement lorsque vous en êtes sûr.
La suppression d’une branche locale supprime-t-elle la branche distante ?
Non, ils sont séparés. Utilisez git push origin --delete branch-name pour le dépôt distant.
Pourquoi une branche distante supprimée apparaît-elle toujours ?
Votre référentiel a toujours la référence de suivi à distance. Exécutez git fetch --prune pour le supprimer.
Puis-je supprimer plusieurs branches à la fois ?
Oui. git branch -d one two three supprime chaque nom que vous indiquez et git push origin --delete one two fait de même sur le dépôt distant.
Sources
Les allégations concernant d'autres produits ont été vérifiées par rapport à leurs pages officielles sur 7 novembre 2026. Les prix et les fonctionnalités changent ; les pages des fournisseurs sont la source de vérité.