[Git] マージ済みのブランチを一括で削除する

2017.07.27

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

マージ済みのブランチを一括で削除

gitで管理しているとローカルにブランチがどんどん残っていくものです。毎回消していくのも大変なのでサクッと一括で削除できるコマンドを備忘録的に載せておきます。

$ git checkout master && git branch --merged | grep -v '*' | xargs -I % git branch -d %

コマンドを見ての通りなのですが

  1. masterブランチに移動する
  2. すでにマージされてるブランチだけを抽出して一括で削除する

の流れになります。

ですので、マージされていない作業中のブランチが削除されることはないです。

主流のブランチがmasterでなく、developだったりすることもあると思うので、適宜書き換えてください。もし必要そうならmasterブランチに移動後にpullをするコマンドを入れてもいいかもしれません。