Supprimer une branche dans GitHub peut paraître simple, mais cela peut parfois s’avérer plus complexe qu’un simple clic ou une simple commande. Surtout si vous travaillez à la fois avec des copies locales et le dépôt distant : la situation peut vite devenir confuse. Ce guide vise à clarifier le processus et à présenter les méthodes habituelles pour supprimer des branches, que vous soyez à l’aise avec la ligne de commande ou que vous préfériez naviguer sur l’interface web de GitHub. C’est un peu agaçant de voir d’anciennes branches encombrer le dépôt. Les supprimer permet non seulement de faire le ménage, mais aussi d’éviter les commits accidentels sur des branches obsolètes.
Comment supprimer une branche GitHub ?
Méthode 1 : supprimer une branche locale
Cette étape permet de nettoyer votre machine locale, surtout si vous avez déjà fusionné la branche ou si vous souhaitez simplement ranger votre espace de travail. Elle est utile si vous avez terminé une branche de fonctionnalité ou de correction de bug et que vous n’avez plus besoin qu’elle encombre votre liste.
- Ouvrez votre terminal ou votre invite de commande. Sous Windows, il peut s’agir de PowerShell ou de l’invite de commande. Sous Mac/Linux, ouvrez simplement le terminal.
- Accédez à votre dossier de dépôt. Généralement, il ressemble à ceci :
cd /path/to/your/repo
. - Vérifiez vos branches :
git branch
. Il est utile de voir ce qu’il y a avant de supprimer quoi que ce soit. - Supprimez une branche fusionnée avec :
git branch -d branch-name
. Cette commande empêche la suppression des modifications non fusionnées. Si elle signale des modifications non fusionnées, vérifiez vos commits ou utilisez la commande force. - Pour vraiment forcer la suppression d’une branche non fusionnée (parce que parfois le contrôle de sécurité vous tape sur les nerfs) :
git branch -D branch-name
.
Cela n’affecte que votre copie locale ; aucun impact sur le dépôt distant. Beaucoup l’oublient, alors soyez vigilants. On a parfois l’impression que Windows complique les choses plus que nécessaire, mais c’est comme ça que Git fonctionne.
Méthode 2 : supprimer une branche distante
Prêt à supprimer cette branche sur GitHub ? Cela la supprimera du dépôt distant, celui sur les serveurs de GitHub, afin que personne d’autre ne puisse plus la consulter ni la modifier. Assurez-vous d’avoir fusionné ou déployé les modifications importantes, sinon vous les perdrez ; attention.
- Tout d’abord, vérifiez l’état de votre dépôt : assurez-vous que toutes les modifications nécessaires sont appliquées ou fusionnées.
- Exécutez cette commande :
git push origin --delete branch-name
. - Ou, vous pouvez faire la même chose avec ce raccourci :
git push origin :branch-name
. Parfois, cela semble étrange, mais cela fonctionne tout aussi bien.
Cette approche écologique désencombre votre dépôt GitHub. Sur certaines configurations, la commande de suppression peut prendre quelques secondes ou sembler inactive au départ, mais si vous actualisez la page GitHub, la branche devrait disparaître. Car, bien sûr, GitHub rend la tâche plus complexe que nécessaire.
Méthode 3 : Utiliser l’interface Web GitHub
Vous préférez cliquer plutôt que saisir des commandes ? Pas de problème. Voici comment supprimer une branche directement sur le site :
- Ouvrez votre dépôt dans un navigateur, évidemment.
- Accédez à l’ onglet Branches (généralement sous le nom du dépôt, à côté de Code ou de Pull requests ).
- Trouvez la branche à supprimer. Il est parfois nécessaire de faire défiler la page, surtout si vous avez des dizaines de branches.
- Cliquez sur l’icône de la corbeille (🗑️) à côté.
La branche disparaît instantanément. D’après ce que j’ai vu, c’est la méthode la plus rapide, surtout si vous consultez déjà GitHub. Il peut arriver qu’un avertissement s’affiche indiquant que la branche est protégée ou la branche par défaut ; dans ce cas, vous devez d’abord modifier la branche par défaut, ce qui peut être fastidieux, car GitHub ne permet pas de supprimer la branche principale sans la modifier.
FAQ
Dans GitHub Desktop, accédez simplement au menu Branche, sélectionnez la branche et cliquez sur Supprimer. C’est assez intuitif, mais assurez-vous que la branche n’est ni extraite ni protégée.
Oui, si vous vous souvenez des commits ou si la branche est toujours en local, vous pouvez la restaurer. Parfois, le reflog ou l’historique des commits vous aident à la retrouver et à la recréer, surtout si vous ne l’avez pas supprimée de la branche distante.
Non. Les commits eux-mêmes restent dans l’historique du dépôt. Les branches ne sont que des pointeurs. Imaginez la suppression d’un signet, et non de ces pages.
Pas vraiment. La branche par défaut (comme main ou master ) ne peut être supprimée que si vous la modifiez au préalable. C’est une mesure de sécurité, car des éléments comme les pipelines CI/CD en dépendent souvent.
Conclure
Supprimer d’anciennes branches dans GitHub est un mélange de commandes et de clics, selon vos préférences. Le plus important à retenir : supprimez d’abord localement si nécessaire, puis supprimez de GitHub pour maintenir le dépôt en ordre. C’est plutôt satisfaisant de se débarrasser de nombreuses branches obsolètes, et cela évite toute confusion ultérieure. Un petit tour d’horizon des branches de votre dépôt.
J’espère que cela fera gagner quelques heures à quelqu’un, ou du moins rendra le processus moins ennuyeux.
Résumé
- Utiliser
git branch -d
ougit branch -D
pour le nettoyage local. - Exécuter
git push origin --delete branch-name
ougit push origin :branch-name
supprimer à distance. - Ou cliquez simplement sur l’icône de la corbeille dans l’interface Web de GitHub pour supprimer les branches visuellement.
- N’oubliez pas que la suppression d’une branche ne supprime pas les commits, juste le pointeur.