はじめに
Gitでは容易にブランチを作成し、切り替えることができます。 ただ、容易にブランチを作成できるがゆえに、不要なブランチがわかりにくく、残ってしまうことがあります。
すでにmasterブランチにマージされているが、ローカルに残ってしまったブランチ を掃除するためのコマンドを紹介します。
※実行前には、実行結果を確認してください!自己責任でお願いします!
検証環境
| |
masterブランチマージ済みのローカルブランチを削除
まずはローカルブランチを対象とした掃除の方法について。
git branch --merged master コマンドでmasterブランチにマージ済みのローカルブランチを出力できます。
ここから カレントブランチ 、 masterブランチ 、 developブランチ を除外します。
最後に該当のブランチ名を git branch -d で1つずつ削除していきます。
| |
masterブランチマージ済みのoriginリモートブランチを削除
すでにpush済みのリモートブランチを対象とした掃除の方法について。
今度は git branch --remotes --merged master でマージ済みのリモートブランチを出力しますが、 origin ブランチ飲みに絞り込みます。
最後に git push --delete origin <branch_name> コマンドで削除を行います。
| |
masterブランチマージ済みのupstreamリモートブランチを削除
こちらは利用するケースは更に低いと思いますが、すでにpush済みのリモートブランチを対象とした掃除の方法について。
先程の origin の文字が upstream に置換されているだけです。
| |
ひとこと
実行前には必ず、 xargs コマンドで実行される git コマンドが正しいかどうを確認するために xargs -n 1 echo git ... のように書き直して実行してみてください。