git merge

では実際にmergeしてみましょう。

現在feature1にcommitが1つ積まれている状態で、mainの方はfeture1を切った時点からcommitを積まれていません。feature1mainにmergeしましょう。mainにいることを確認して、以下のコマンドを叩きましょう。--no-ffをオプションとして指定しない場合、feature1のみにcommitが積まれているとFast-forwardでのmergeになるのため、3way mergeをする場合は指定します。

git merge --no-ff feature1

上記を叩くと、エディタが開き以下のように表示されるかと思います。

commit messageがデフォルトでMerge branch 'feature1`と入力されているかと思います。こちらのファイルを閉じましょう。

git logにてcommitを確認しましょう。--graphオプションをつけると、以下のようにmergeした際の図式を視覚的にみやすく表示することができます。

次にmainとfeatureでそれぞれcommitを積んで、mergeしてみましょう。

以下コマンドを叩き、feature2にて作業します。

a.txtを以下のように編集しましょう。

その後、git addgit commitをしましょう。

commit messageは以下とします。

mainに切り替えましょう。

b.txtを以下のように編集します。

その後、git addgit commitをしましょう。

commit messageは以下とします。

ではmergeしてみましょう。

commit messageはデフォルトのままとします。

再度git logにて確認してみましょう。

以下のように表示されるかと思います。

Last updated