読者です 読者をやめる 読者になる 読者になる

$shibayu36->blog;

株式会社はてなでエンジニアをしています。プログラミングや読書のことなどについて書いています。

今日覚えたgitのコマンド

git branch --merged master

とかやるとmasterにmergeされたbranchが一覧できる。-rをつければremoteの奴が一覧できる。

git branch --contains (SHA1)

とかやるとあるsha1を含むbranchを一覧できる。

これを応用すると

git branch --merged origin/master | perl -lnpe '$_ =~ s/[ *]+//;' | grep -v '^master$' | xargs git br -d

みたいな感じでmasterにmergeされたlocalブランチをすべて消すことができる。

便利ですね。

ちなみにmaster ブランチにマージ済みのリモートブランチをまとめて削除する git-prune-remote-branch というスクリプトを作った - 刺身☆ブーメランのブログ / @kyanny's blogみたいな便利なのもあります。