S-JIS[2013-02-11/2017-01-14] 変更履歴
Gitのブランチを扱うコマンドのメモ。
現在のブランチを確認する場合は「git branch」(引数を何も付けない)を使う。
$ git branch gh-pages * master
ローカルリポジトリーにあるブランチ一覧が表示され、現在のブランチの左側に「*」が付いている。
リモートリポジトリーも含めて全部を表示するには-aを付ける。
$ git branch -a gh-pages * master remotes/bitbucket/master remotes/origin/HEAD -> origin/master remotes/origin/gh-pages remotes/origin/master
現在のブランチを元にして新しいブランチを作るには、作成したいブランチ名(だけ)を指定する。
$ git branch branch1
※コマンドが成功しても、特に何も表示されない^^;
ただし、このコマンドではブランチを作っただけで、切り替わらない。(→切り替える方法)
ブランチを作ると同時に切り替えるにはcheckout -bを使う。
$ git checkout -b branch1 Switched to a new branch 'branch1'
元にするブランチを指定して新しいブランチを作りたい場合は、元ブランチ名も指定する。
$ git branch branch2 master
$ git checkout -b branch2 master
別のブランチへ切り替えるにはcheckoutを使う。
$ git checkout branch1 Switched to branch 'branch1'
ブランチをマージ(統合)するにはgit mergeでマージ元ブランチを指定する。
$ git checkout branch2 $ git merge branch1 Merge made by the 'recursive' strategy. index.html | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) 〜 $ git log commit 91df70bc955e87e6ee4cc2695f6506d7b4f6f218 Merge: 39dc228 f1f0ee2 Author: hishidama <hishidama@mail> Date: Mon Feb 11 09:49:58 2013 +0900 Merge branch 'branch1' into branch2 〜
ブランチがマージ済みかどうかは、--mergedや--no-mergedオプションで確認できる。[2017-01-14]
(--mergedオプションを付けると、マージ済みのブランチだけ表示される。--no-mergedだとマージされていないブランチが表示される)
$ git branch --merged * master wip/foo $ git branch --no-merged wip/bar