我目前的模式是在主题分支完成后 merge
到我的主要开发分支。最近看日志有点疯狂,我正在考虑改用 rebase
。
对于主题/功能分支,使用rebase
而不是merge
可能有哪些缺点?
最佳答案
使用 rebase 的主要缺点是你应该(阅读必须)只在本地使用 rebase 。也就是说,一旦推送了某些内容,之后就不要对其进行 rebase 。重写历史很好,很花花公子,但一旦你开始在 Remote 上乱搞历史,事情就会变得非常困惑。
编辑
另一个缺点是真实的历史实际上已经丢失了。这意味着,除其他事项外,不可能(轻松地)返回到主题分支,因为它看起来像是主分支的一部分。它还使恢复更改变得更加痛苦,因为您必须一次挑选一个提交,尽力记住哪些来自原始主题分支。如果您使用交互式 rebase ,或者更糟——压缩您的提交——那么这可能会非常令人头疼。
关于git - 重新设置主题分支而不是 merge 的缺点是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10000624/