# 機能ブランチに開発ブランチの変更を取り込む方法
機能ブランチに対して開発ブランチの変更を取り込む方法は「マージ」「リベース」2つの方法が考えられる。
# 1. マージコミット
マージとは get fetch & git merge
コマンド( = git pull
コマンド)を使用して、開発ブランチの変更を機能ブランチに取り込む方法を指す。
マージを行った場合は下記の通り、「マージコミット」が作成される。
# 現在のブランチは 機能(feature/A)ブランチ
$ git branch
develop
* feature/A
# リモート追跡ブランチの最新化
$ git fetch
# 開発(develop)ブランチの変更を機能(feature/A)ブランチにマージ
$ git merge develop
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 2. リベース
リベースとは get fetch & git rebase
コマンド( = git pull --rebase
コマンド)を使用して、開発ブランチの変更を機能ブランチに取り込む方法を指す。
最新の開発ブランチの先頭から新たにコミットを作りなおす動きになるので、マージによる方法と異なり「マージコミット」は作成されない。
# 現在のブランチは 機能(feature/A)ブランチ
$ git branch
develop
* feature/A
# リモート追跡ブランチの最新化
$ git fetch
# 機能(feature/A)ブランチを開発(develop)ブランチにリベース
$ git rebase develop
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10