结论:
- 直接merge会产生合并提交记录,而rebase是会形成线性的提交记录,如果该合并是有意义的合并,则可以使用merge,记录合并提交记录,如果是日常个人的合并,则使用rebase,减少无意义的合并提交记录
- 使用rebase要注意在自己的分支上进行,不然会导致其他人由于指向的commit id不同,导致同步问题
- git pull 默认是merge ,可配置为rebase
分析
假设当前有两个分支,一个特性分支、一个主分支,如图
使用merge
(main): git merge feature
结果如下图
使用rebase
(feature): git rebase main
(feature): git checkout main
(main): git merge feature
使用merge --squash
(main): git merge --squash feature
标签:Git,rebase,合并,feature,merge,git,main From: https://www.cnblogs.com/kyou/p/18488451个人笔记备忘,整理自知行小课