[Git] merged な remote branch を一括削除するコマンド

Git で merged な remote branch を一括削除するコマンドをご紹介します。

Git | ギット

マージ済みリモートブランチ一括削除コマンド

git branch --remote --merged master | \
grep -v -e master -e release -e staging | \
sed -e 's% *origin/%%' | \
xargs -I% git push --delete origin %

前提として master, release, staging branch は対象外としています。

削除後、リモートブランチの同期

他の人がリモートブランチが削除しても、自分のローカルブランチにはリモートブランチの情報が残ったままです。

以下のコマンドでリモートブランチの情報を同期できます。

git remote prune origin

他にも、

git fetch --prune

git pull --prune

というように –prune オプションを付ければ同期できます。

参考情報