为什么在我的代码与其他人的代码合并时会给出三个选择?难道不应该只有我的代码,其他人的代码以及下面的输出吗?KDIFF的文档无法帮助我理解。
Answers:
听起来您正在进行三向合并,所以A应该是B和C所基于的基本版本,B是他们的版本,C是您的版本(我相信; B和C可能是相反的)。
(BASE)->当前位于远程存储库中的原始文件。
B(本地)->您的文件。这仅显示与A.C
(REMOTE)‐>其文件相比的更改。这仅显示了与A相比的更改。
如果更改在不同的代码行上,则使用B和C。如果更改在同一代码行上(发生冲突),则从B或C进行。
A是您的父修订版,其中B和C作为孩子。
这意味着B包含user1 / repo1在A上所做的更改,而C也包含其他用户(user2 / repo2)在A上所做的更改
kdiff使您可以选择从b或c中选择修改(或同时选择两者)或从父级也选择“ A”
如果我这样做了git rebase
,那么我的观察结果是:C-是my_branch本地的内容(即,在重新设置基准并发生冲突之前在编辑器中看到的内容)。B-分支是我在my_branch的基础之上(例如,以master分支为基础)A-B&C的基本修订版(在这种情况下,对我来说并没有太大关系)