ローカルに残ってしまったリモートブランチの残骸を削除する – git
状況
git remote -aをすると削除済みのリモートブランチが表示される。githubやbitbucketから直接ブランチを削除した場合や、別のマシンからリモートブランチを削除した場合に自分のマシンにリモートに関する情報が残ったままになってしまって起こる現象。
まずは追跡情報を確認
git remote show originで現在の状態が確認できる。
| 1 2 3 4 5 6 7 8 9 10 11 12 13 | $ git remote show origin * remote origin   Fetch URL: git@bitbucket.org:***/***.git   Push  URL: git@bitbucket.org:***/***.git   HEAD branch: master   Remote branches:     master  tracked     product new (next fetch will store in remotes/origin)   Local branch configured for 'git pull':     master merges with remote master   Local ref configured for 'git push':     master pushes to master (up to date) | 
ローカルにもリモートにもあるブランチはtracked、そうでないのはstaleと表示される。上の例では問題ない。
staleなブランチがあったら
git remote prune originでstaleな状態のブランチを削除してくれる。正確にはブランチを消すのではなく、ローカルに残った無くなってしまったリモートに関する追跡情報を消去してくれる。
| 1 2 3 | $ git remote prune origin $ git remote prune origin --dry-run // テスト | 
コメント
コメントはありません。