17 ポイント 投稿者 studroid 2022-12-01 | まだコメントはありません。 | WhatsAppで共有

リモートブランチをトラッキングするローカルブランチが存在する状態で、リモートブランチが削除された場合に、自分のコンピューターにだけ残ったローカルブランチを削除してくれるカスタムコマンドの設定方法

  • トラッキングしている状態でリモートブランチが削除されると[gone]状態に変わる点を利用する
  • git goneコマンドは次の2つを実行する
    1. git fetch -pでpruneを実行(削除されたリモートブランチ情報を更新)
    2. 削除されたリモートブランチをトラッキングしているローカルブランチをすべて削除
  • トラッキングしているリモートブランチがないローカルブランチは削除されない

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"

まだコメントはありません。

まだコメントはありません。