[Git] merged な remote branch を一括削除するコマンド
Git で merged な remote branch を一括削除するコマンドをご紹介します。
マージ済みリモートブランチ一括削除コマンド
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 オプションを付ければ同期できます。
参考情報
- github – How can I delete all git branches which have been merged? – Stack Overflow
- Gitでリモートのマージ済みのブランチを一括削除する – Qiita
- Gitで、リモートにあるブランチを削除する方法 · DQNEO起業日記
- Gitで使われていないリモートブランチの整理 – Qiita