分支合併(快轉模式)

在上個小節,我們讓 master 原本在 c2 ,藉由 git merge dev 指令進行合併,也讓 master 移動到 C4。
這個合併過程,我們會稱作快轉模式(fast-forward),但並非每次合併都會觸發快轉模式,所以接下來,筆者將要講解觸發時機。
情境回顧
當我們用了 master 建立 2 個 commit 後,接下來就建立了 dev 分支。
並且用 dev 建立了 2 個 commit。

在此時,你會發現 master 在這過程中,根本沒有任何 commit,他仍然停留在 c2 的初始位置。
當條件符合時,就會觸發快轉模式來進行合併,也因此不會因為合併,額外產生出新的 commit。

情境小結
dev建立出來時,是跟master在相同的 commit 上,c2就可以當做是dev的初始 commit 位置。- 過程中,若
master沒有任何更新,表示初始 commit 位置沒有變動,此時用master去 mergedev就會觸發快轉模式。
結合以上兩點,當你的 HEAD 位置是某個要被 merge branch(dev) 上的初始 commit,就會觸發快轉模式。