git gone - リモートで削除されたブランチをすべて削除するカスタムコマンド
(erikschierboom.com)リモートブランチをトラッキングするローカルブランチが存在する状態で、リモートブランチが削除された場合に、自分のコンピューターにだけ残ったローカルブランチを削除してくれるカスタムコマンドの設定方法
- トラッキングしている状態でリモートブランチが削除されると
[gone]状態に変わる点を利用する git goneコマンドは次の2つを実行するgit fetch -pでpruneを実行(削除されたリモートブランチ情報を更新)- 削除されたリモートブランチをトラッキングしているローカルブランチをすべて削除
- トラッキングしているリモートブランチがないローカルブランチは削除されない
gitを実行できるターミナルで以下のコマンドを使うと、git goneコマンドをカスタムコマンドとして追加できる
git config --global alias.gone "! git fetch -p && git for-each-ref --format '%(refname:short) %(upstream:track)' | awk '\$2 == \"[gone]\" {print \$1}' | xargs -r git branch -D"
まだコメントはありません。