私は開発プロセスに従い、新しい機能やストーリーカードごとに新しいローカルブランチを作成します。終了したら、ブランチをマスターにマージしてからプッシュします。
怠惰や忘却の組み合わせが原因で時間の経過とともに発生する傾向があるのは、ローカルブランチのリストが大量になり、その一部(スパイクなど)がマージされていない可能性があることです。
すべてのローカルブランチを一覧表示する方法と、1つのブランチを削除する方法を知っていますが、すべてのローカルブランチを削除できるgitコマンドがあるかどうか疑問に思っていました。
以下はgit branch --merged
コマンドの出力です。
user@machine:~/projects/application[master]$ git branch --merged
STORY-123-Short-Description
STORY-456-Another-Description
STORY-789-Blah-Blah
* master
grep -v \*
(以下の回答に従って)でリストされているブランチを削除しようとすると、エラーが発生します。
error: branch 'STORY-123-Short-Description' not found.
error: branch 'STORY-456-Another-Description' not found.
error: branch 'STORY-789-Blah-Blah' not found.
私が使用しているもの:
git 1.7.4.1
ubuntu 10.04
GNU bash、バージョン4.1.5(1)
-GNUgrep2.5.4 をリリース