- リモートブランチの削除
- トラッキング(追跡)ブランチの削除
git push -d $remote_repo $remote_branch
git remote prune $remote_repo
リモートリポジトリの削除を実行したら。つまり、git remote deleteしたら普通はトラッキング(追跡)も不要のはず。
git remote -rD $track_branch ではリモートリポジトリが抱えてるブランチ分回すハメになってしまう。(下の負けた感じを参照)
サブコマンドのpruneをかましてやるとリモートリポジトリを指定するとまるっといいかんじにやってくれる。
DRYな備忘録 - リモートに無いブランチはローカル&トラッキングからも消そうではないか
git-branch(1)には
Use -r together with -d to delete remote-tracking branches. Note, that it only makes sense英語力がたりなさすぎて、git-prune(1)を引いてそこのNOTEにはユーザは直接叩かないよ。って書いてあって??となってしまった。
to delete remote-tracking branches if they no longer exist in the remote repository or if
git fetch was configured not to fetch them again. See also the prune subcommand of git-
remote(1) for a way to clean up all obsolete remote-tracking branches.
git-remote(1)のpruneサブコマンドと書いてあるのでマニュアルに書いてある通り。
だけど、Gitのサブコマンドは連結出来るということを知らなかった自分には通じなかった(死滅)
git pushでリモートブランチを削除しても手元のトラッキングブランチが残っている。
地味に知らなかった
— nekomatu (@nekomatu) 2014, 10月 28
結局、よく分からなくて負けた感じがする方法を取ったよ
git branch -rD `git branch -r | grep old_upstream/`
— nekomatu (@nekomatu) 2014, 10月 28
0 件のコメント:
コメントを投稿