fast-forward

如果待合并的分支在当前分支的下游,也就是说没有分叉时,会发生快速合并,从dev分支切换到master分支,然后合并dev分支。

git checkout master
git merge dev

注意:而我们平常什么都不加的时候,则使用默认的 --ff , 即 fast-forward 方式。

【git | 11】git merge

 no-ff

如果我们不想要快速合并,那么我们可以强制指定为非快速合并,只需加上--no-ff参数

git checkout master
git merge –no-ff dev

这种合并方法会在master分支上新建一个提交节点,从而完成合并。

【git | 11】git merge

 

squash

svn的在合并分支时采用的就是这种方式,squash会在当前分支新建一个提交节点。

squash和no-ff非常类似,区别只有一点不会保留对合入分支的引用。

git checkout master
git merge –squash test

 

 【git | 11】git merge

 

 

 

 

合并冲突

【git | 11】git merge


【git | 11】git merge

 

 

 

参考资料

1. 《CS Visualized: Useful Git Commands》

 2. Git 分支管理 不使用Fast forward模式进行合并 分支管理策略

3. git merge和git merge --no-ff的区别

4. 图解4种git合并分支方法

相关文章:

  • 2021-10-22
  • 2021-04-30
猜你喜欢
  • 2021-07-24
  • 2021-07-26
  • 2022-02-10
  • 2022-12-23
  • 2021-06-27
相关资源
相似解决方案