Je suis un processus de développement où je crée une nouvelle branche locale pour chaque nouvelle fonctionnalité ou carte d'histoire. Une fois terminé, je fusionne la branche en maître, puis je pousse.
Ce qui a tendance à se produire au fil du temps en raison d'une combinaison de paresse ou d'oubli, c'est que je me retrouve avec une grande liste de succursales locales, dont certaines (comme les pointes) peuvent ne pas avoir été fusionnées.
Je sais comment lister toutes mes branches locales et je sais comment supprimer une seule branche mais je me demandais s'il y avait une commande git qui me permet de supprimer toutes mes branches locales?
Voici la sortie de la git branch --merged
commande.
user@machine:~/projects/application[master]$ git branch --merged
STORY-123-Short-Description
STORY-456-Another-Description
STORY-789-Blah-Blah
* master
Toutes les tentatives de suppression de branches répertoriées avec grep -v \*
(selon les réponses ci-dessous) entraînent des erreurs:
error: branch 'STORY-123-Short-Description' not found.
error: branch 'STORY-456-Another-Description' not found.
error: branch 'STORY-789-Blah-Blah' not found.
J'utilise:
git 1.7.4.1
ubuntu 10.04
GNU bash, version 4.1.5 (1) -release
GNU grep 2.5.4