20190505追記
- わかりにくい表現を修正しました。
-
git branch -vコマンドの説明を追加しました。 -
git branch \<branchname>コマンドの説明に追記しました。
git branchコマンドについて、主にオプションをまとめました。
表示
git branch
ローカルブランチの一覧を表示する。
git branch -r
-r、もしくは、--remotesオプション。
リモートブランチの一覧を表示する。
git branch -a
-a、もしくは--allオプション。
リモートブランチを含んだブランチの一覧を表示する。
git branch --merged
--mergedオプション。
HEADにマージ済みのブランチの一覧を表示する。
git branch --no-merged
--no-mergedオプション。
HEADにマージされていないブランチの一覧を表示する。
git branch --color
--colorオプション。
ブランチの一覧の表示をカラフルにする(デフォルト)。
git branch --no-color
--no-colorオプション。
ブランチの一覧を色付きで表示しない。
git branch -v
-v、もしくは--verboseオプション。
詳細情報を付与した状態で、ブランチの一覧を表示する。
各ブランチの先頭のコミットのIDとメッセージを表示する。
-vvオプションを使用することで、追跡しているリモートブランチの名前を表示する。
操作
git branch <branchname>
現在のHEADから、指定したbranchnameを名前として、新しいブランチを作成する。
新しく作成したブランチへの切り替えは行わない。
切り替えを行う場合は、git checkout <branchname> を使用する。
新しいブランチの作成と切り替えを同時に行う場合は、git checkout -b <branchname> を使用する。
git branch -d <branchname>
-d、もしくは、--deleteオプション。
指定したブランチを削除する。
-rオプションを付けた場合は、リモートブランチを削除する。
指定したブランチの内容が、追跡しているリモートブランチ(設定されていない場合はHEAD)にマージされていないと削除できない。
git branch -D <branchname>
-Dオプション。
マージの状態に関わらず、指定したブランチを削除する。
git branch -m <new branchname>
-m、もしくは、--moveオプション。
現在チェックアウトしているブランチ名を<new branchname>に変更する。
git branch -m <old branchname> <new branchname>で変更元を指定することもできる。
git branch -u <upstream>
-u、もしくは、--set-upstream-to=<upstream>オプション。
現在チェックアウトしているブランチが、<upstream>で指定したリモートブランチを追跡するようにする。
git branch -u <upstream> <branchname>で対象ブランチを指定することもできる。
git branch --unset-upstream
--unset-upstreamオプション。
現在チェックアウトしているブランチが追跡しているリモートブランチがあった場合、そのひもづきを解除する。
git branch --unset-upstream <branchname>で対象ブランチを指定することもできる。