Gitの基礎 ブランチ
gitのブランチ機能についてまとめました
gitのinit~commitまでの流れは前記事を参照
osはmacOS High Sierra
ブランチとは
メインのバージョンと別のバージョンを作る方法です
webサイトを作る時にメニューとあるページを別々にバージョン管理したいという時などに使います
##ブランチの機能
- ブランチの作成
git branch
- ブランチの切り替え
git checkout
- 他ブランチとのマージ
git merge
準備
はじめにテスト用のローカルリポジトリを作成し、コミットを行います
今回はtestディレクトリにtestファイルを作成しコミットを行いました
$ mkdir test
$ cd test
$ git init
$ echo "test branch" >> test
$ git add -A
$ git commit -m "first commit"
[master (root-commit) 97872e4] first commit
1 file changed, 1 insertion(+)
create mode 100644 test
ブランチの作成
git branch 'ブランチ名'
でブランチ名のブランチを新たに作成できます。
ブランチ一覧はgit branch
で確認できます
bash-3.2$ git branch 'testBranch'
bash-3.2$ git branch
* master
testBranch
今いるブランチには*
です。master
にいるので新たに作成したtestBranch
に移動しましょう
ブランチの切り替え
git checkout 'ブランチ名'
でブランチの切り替えができます。
$ git checkout testBranch
Switched to branch 'testBranch'
$ git branch
master
* testBranch
*testBranch
になっておりブランチが切り替わっているのがわかります。
「ブランチの作成+ブランチの切り替え」はcheckout -b 'ブランチ名'
でもできます。
他ブランチとのマージ
マージする前の準備としてtestBranchにコミットを行います
$ echo 'hoge' >> test
$ git add -A
$ git commit -m "wite branch"
[testBranch 3681405] write branch
1 file changed, 1 insertion(+)
現在以下のような感じです
$ git log --oneline
29a0d87 (HEAD -> testBranch) wite branch
8b01a71 (master) first commit
ここでmasterとtestBranchをマージします。
流れはmasterにcheckoutし、git merge (ブランチ名)
でマージができます。
$ git checkout master
Switched to branch 'master'
$ git merge testBranch
Updating 8b01a71..29a0d87
Fast-forward
test | 1 +
1 file changed, 1 insertion(+)
$ git log --oneline
29a0d87 (HEAD -> master, testBranch) wite branch
8b01a71 first commit
masterとtestが同一になってるのがわかります。
##おわりに
以上がブランチの基本的な流れです
マージをしてると稀に競合が起きマージができない場合があります
競合の解決方法は次回記事で行います。