S-JIS[2013-02-11/2017-01-14] 変更履歴

Gitブランチ

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'

元にするブランチを指定して新しいブランチを作りたい場合は、元ブランチ名も指定する。

masterブランチを元に、branch2を作る例

$ git branch branch2 master
$ git checkout -b branch2 master

ファイルが何も入っていない空のブランチを作る方法


別ブランチへの切替

別のブランチへ切り替えるにはcheckoutを使う。

$ git checkout branch1
Switched to branch 'branch1'

ブランチのマージ

ブランチをマージ(統合)するにはgit mergeでマージ元ブランチを指定する。

branch2にbranch1をマージする例

$ 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

Git目次へ戻る / 技術メモへ戻る
メールの送信先:ひしだま