gitブックから:
そのマージで「早送り」というフレーズに気付くでしょう。マージしたブランチが指しているコミットは、現在のコミットのすぐ上流にあるため、Git はポインターを前方に移動します。別の言い方をすれば、1 つのコミットを、最初のコミットの履歴をたどることで到達できるコミットにマージしようとすると、Git はポインターを前方に移動することで物事を簡素化します。早送り"。
ただし、この「早送り」の副作用は、複数のコミットを含む機能ブランチがある場合、マスターにマージして戻すときに機能の履歴コンテキストが失われることです。つまり、コミットはこの機能の一部としてグループ化されません。
with fast forward: x---x---x---x---x---x---x
without fast forward: x---x---x x---x---x---x
\x--x--x/
手動の方法は、git merge --no-ff
これをデフォルトとして設定する方法を知っている人はいますか?