git branch コマンド
公式サイト:
git-branch | Git Documentation [Official]
目次
使い方
ローカルのブランチ/作業ブランチを確認する。
$ git branch
リモートのブランチを確認する。
$ git branch --remote
全てのブランチ (ローカル/リモート) を確認する。
$ git branch --all
現在のブランチから派生ブランチを作成する。
$ git branch develop
作業ブランチを変更する。
$ git checkout develop
現在のブランチから派生ブランチを作成して、作業ブランチを変更する。
$ git checkout -b develop
ローカルのブランチを push
する。(リモートに反映させる。)
$ git push -u origin develop
2回目以降に push
を実行する。(-u
オプションで上流ブランチを設定済みの場合)
$ git push
ローカルのブランチを削除する。
$ git branch -d develop
リモートのブランチを削除する。
$ git push -d origin develop
リモートのブランチ情報を取得する。(ローカルのリポジトリにキャッシュする。)
$ git fetch
参考:
git で最近コミットしたブランチを探す | yuhei.kagaya
ブランチ一覧を更新時刻つきで表示したい場合、git の for-each-ref が使える。| Bye Bye Moore
What is the format of <pattern> in git-branch --list – Stack Overflow
新しいブランチを作成する
master
ブランチから新しく develop
ブランチを作成して切り替える。
$ git checkout master $ git branch develop $ git checkout develop
ブランチの作成と切り替えの2つのコマンドを合わせて、1つのコマンドで実行する。(git checkout
に -b
スイッチを付けて実行する。)
$ git checkout master $ git checkout -b develop
git switch
コマンドに -c
オプションを付けてブランチを作成する。
$ git checkout master $ git switch -c develop
参考:
-c – git-switch | Git Documentation [Official]
作業ツリーからブランチを作成する
現在の作業ツリーの全ての変更をスタッシュに退避し、新規ブランチを作成してブランチを切り替え、退避していた作業内容をスタッシュから取り出してコミットする。
$ git stash -u $ git checkout -b work $ git stash pop $ git add . $ git commit -m "[WIP]"
参考:
履歴のないブランチを作成する
履歴のないブランチを作成するには、--orphan
オプションを指定してチェックアウトを実行する。
$ git checkout --orphan empty
参考:
How to remove the first commit in git? – Stack Overflow
説明コメント (Description)
参考:
Git のブランチには説明をつけることができる | アジャイル SE の憂鬱
リモートブランチ
参考:
remote に branch を push し、remote から clone したリポジトリの branch を変更して push する | basyura’s blog
HEAD
参考:
Git の参照 – HEAD と heads と tags と remotes | たいさブログ
Git リモートリポジトリの HEAD のブランチを変更する – Qiita
Git のブランチや HEAD をサブコマンドで操作する | 丸ノ内テックブログ
ブランチの一覧を確認する
参考:
ローカルやリモートのブランチ一覧を見る/リモートブランチ (追跡ブランチ) の情報を更新する | tweeeety のぶろぐ的めも
ブランチ名を変更する
ローカルブランチの名前を変更する。
$ git branch -m old_branch new_branch
カレントブランチ (現在チェックアウトしているブランチ) の名前を変更する。
$ git branch -m new_branch
ローカルで削除したブランチをリモートに反映させる。(リモートブランチを削除する。)
$ git push origin :old_branch
ローカルで作成したブランチをリモートに反映させる。(リモートブランチを作成する。)
$ git push origin new_branch
参考:
github でブランチ名を変更する (ローカル/リモート) – Qiita
Git でブランチ名前を変更するオプション「git branch -m」| WWW クリエイターズ
ブランチの一覧をソートして表示する
コミットの作成日時が新しい順にソートして表示する。
$ git branch --sort=-authordate
参考:
git branch の結果を時間順にソート | Islands in the byte stream
ブランチを最新コミット順に並べたら幸せになれた | kakakakakku blog
ブランチ一覧を更新時刻つきで表示したい場合、git の for-each-ref が使える | Bye Bye Moore
git の for-each-ref で各ブランチで最後に commit した人とその更新時刻を一覧表示させる | DOT NOTES
Sort git Branches by Date | David Walsh Blog
git-for-each-ref | Git [Official]
How can I get a list of Git branches, ordered by most recent commit? – Stack Overflow
ブランチが特定のコミットを指すように設定する
ブランチをチェックアウトした後に、git reset
コマンドにコミットハッシュを指定して実行する。
$ git checkout master $ git reset --hard 12345abcde
あるいは、git branch
コマンドに -f
オプションを付けて実行する。
$ git branch -f master 12345abcde
参考:
How do I make a branch point at a specific commit? – Stack Overflow
追跡ブランチを確認する
ブランチの一覧で情報を詳細に確認する。
$ git branch -vv
現在のブランチの追跡ブランチを確認する。
$ git status -sb
参考:
ローカルブランチがどのリモートブランチを追跡してるのか確認する方法 | dackdive’s blog
Git のトラッキングブランチの確認と設定方法 | yu8mada
追跡ブランチを設定する
現在のブランチが origin/master
を追跡するように設定する。
$ git branch --set-upstream-to origin/master
参考:
Git のトラッキングブランチの確認と設定方法 | yu8mada
不要なブランチを削除する/ブランチの整理
参考:
Git で使われていないリモートブランチの整理 – Qiita
特定のコミットを含むブランチを探す
参考:
Git のあるコミットが、特定のブランチに属するか調べる方法 – Qiita
Git Recent
リポジトリ:
paulirish/git-recent: See Your Latest Local Git Branches, Formatted Real Fancy – GitHub