こんなブランチ構成だとする。
$ git branch -a * master ios7 remotes/origin/HEAD -> origin/master remotes/origin/ios7 remotes/origin/master
ios7のブランチを消したい。
まずはローカルブランチを削除
$ git branch -d ios7 Deleted branch ios7 (was 57c1b0b).
リモートブランチも削除
$ git push origin :ios7 To https://xxx.git - [deleted] ios7
確認
$ git branch -a * master remotes/origin/HEAD -> origin/master remotes/origin/master
ちゃんと消えた!
push
で消すのとか、:hoge
で指定するのとか、最初ちょっと戸惑った。
2014.3.9 追記
id:shoma2da さんが :hoge
のコロンの意味を教えてくれました。
これを読んだら、削除するのに 何故 push
コマンドを使うのか、その理由がスッキリしました。
おまけ
ついでにリモートブランチをローカルにチェックアウトする方法も。
$ git branch -a * master remotes/origin/HEAD -> origin/master remotes/origin/ios8 remotes/origin/master
ios8 ブランチがローカルにないのでチェックアウトしたい場合。
$ git checkout -b ios8 origin/ios8
remotes/ は不要。-b
オプションを付けると自動的にそのブランチに切り替わる。