详细版本见个人博客:Git的Fast Forward和no fast foward合并模式对比
通常,合并分支时,如果没有分歧解决,就会直接移动文件指针,这就是Fast forward模式。
举例来说,开发一直在master分支进行,但忽然有一个新的想法,于是新建了一个dev的分支,并在其上进行一系列提交,完成时,回到master分支,此时,master分支在创建dev分支之后并未产生任何新的commit。此时的合并就叫
fast forward。
但这种模式下,删除分支后,会丢掉分支信息。
如果要强制禁用Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。
一、强制禁用Fast forward模式的具体方法
下面我们看下如何强制禁用Fast forward模式(--no-ff方式)的git merge:
首先修改readme.md文件,并提交一个新的commit:
$ git add .
$ git commit -am "update readme"

本文探讨了Git的两种合并模式:Fast Forward和no fast forward。Fast Forward模式在没有分歧时直接移动文件指针,可能导致分支信息丢失。而禁用Fast Forward模式会在合并时创建新commit,保留分支历史。文中介绍了强制禁用Fast Forward模式的操作步骤,并提到了详细的对比图可在个人博客查看。
最低0.47元/天 解锁文章





