With --no-ff Generate a merge commit even if the merge resolved as a fast-forward.意思是即使此次merge可以fast-forward,也要创建一个新的commit。
接下来通过两个简单的实验来演示这个参数的效果。实验模拟日常开发中一个最简单的流程,从master上创建test分支,进行开发,将test分支merge回master分支,最后删除test分支。
首先看看不使用--no-ff的情况。
开始操作前通过SmartGit查看log:
现在执行命令
git checkout master此时log如下:
git merge test
最后 git branch -d test 删除test分支,
可以看到,此时丝毫看不到之前test分支开发的影子。如果想保存之前分支开发的影子我们可在merge时使用--no-ff参数,
git merge --no-ff test效果如图
即使删除test分支后依然可以看到之前分支的记录:
没有评论:
发表评论