这有点长,但我认为这可能是一个有趣的问题。
我们最近才开始在我们的公司使用 git,尽管很多人不情愿一些人设法开始在小型项目中使用它,而现在我们实际上在更多相关项目中使用它。
我总是在合并之前尝试做一个 rebase,但就在最近我们发现这种方法存在问题。
假设您有一个文件 F 并且您有以下 git 历史记录:
(master) F -- F''1
\
(feature) \- F'1 -- ... -- F'X
现在,如果您对功能分支进行变基,并且在解决第一个冲突时,您实际上保留了 F''1 和 F'1 的更改,您将不得不手动解决文件 F 的 X 冲突,因为 git 可以t 自动解决它们。相反,如果您只是进行了合并(没有变基),您将只需要解决一个(“大”)冲突。这让我质疑变基的实际价值,因为这可能是一项非常乏味的工作。
我错过了什么还是这就是它的方式?如果您对一个文件有 30 次提交,则您必须检查每一次提交并手动解决任何冲突。有没有更合适的方法来处理这种情况?
很抱歉,如果我没有很好地解释,但您可以尝试复制我在虚拟存储库中提到的步骤,我想您会明白困扰我的地方。