Passer au contenu
GitTree
Guides Git4 minutes de lecture

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

Mis à jour
  • 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.

Quelle commande supprime quoi
ObjectifCommande
Supprimer une branche locale fusionnéegit branch -d feature/search
Forcer la suppression d'une branche locale non fusionnéegit branch -D feature/search
Supprimer la branche sur le dépôt distantgit push origin --delete feature/search
Supprimer les références de suivi à distance obsolètesgit 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/search

Git 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/search

Cela 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 ?

Erreurs courantes lors de la suppression d'une branche
MessageSignificationCorriger
not fully mergedLa 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 worktreeVous ê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 existLa 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 origin

Pour voir quelles branches locales ont perdu leur copie distante, recherchez gone dans la liste détaillée :

git branch -vv

Comment 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 reflog

Faites-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

  1. 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.

  2. 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.

  3. 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.

  4. 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.

Le menu de branche dans GitTree nomme la branche dans chaque action, afin que vous puissiez voir ce que Supprimer supprimera.
Le menu de branche dans GitTree nomme la branche dans chaque action, afin que vous puissiez voir ce que Supprimer supprimera.

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é.