No.123


【Git】不要なブランチを一括で削除する

いらなくなったブランチを全部削除したい

 Gitは便利で軽量だけど、軽いがゆえに気がつかない問題がある。

 それはブランチの増殖だ。

 マージしたブランチは都度削除していけばいいんだろうけど、開発中はすっかりそのことを忘れてしまう。ふと気がついたときにはブランチ数が100を超えたりとかザラかと思う。…自分だけ?

 まあ、そんなときに不要になったブランチを一括で削除するコマンドがあるので備忘録がてらメモしておく。


削除するコマンド

 普通は現在作業中のブランチと消したくないブランチを指定して実行することになると思う。

git branch | grep -v '*' | grep -v '消したくないブランチ' | xargs -IBRANCH git branch -D BRANCH

 自分はmasterとdevelopを消さないので基本は以下のように実行している。

git branch | grep -v '*' | grep -v 'develop\|master' | xargs -I % git branch -D %