KDIFF合并中的A、B和C是什么
为什么在我的代码和其他人的代码合并时我会面临三种选择? 难道不应该只有我的代码、别人的代码和下面的输出吗? KDIFF 的文档无法帮助我理解。
Why am I given three choices when merging between my code and someone else's?
Shouldn't there just be my code, the other person's code, and the output below?
The documentation for KDIFF doesn't help me understand.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
A 指的是合并目标所基于的版本。如果您从分支合并到主干,“A”将是以前的主干版本。
B 是您本地主干文件夹中当前的内容,包括本地更改。
C 是您想要合并到 B 之上的版本。
A refers to the version your merge target is based on. If you Merge from branch to trunk, 'A' will be the previous trunk version.
B is what you currently have in your local trunk folder, including local changes.
C is the Version you wanna merge on top of B.
听起来您正在执行三向合并,所以A 应该是 B 和 C 所基于的基础修订版,B 是他们的,C 是你的(我相信;但 B 和 C 可能是相反的)。
Sounds like you're doing a three-way merge, so A should be the base revision that B and C are based on, B is theirs and C is yours (I believe; B and C might be the opposite, though).
A(基础)-->当前位于远程存储库中的原始文件。
B(本地)-->你的文件。这仅显示与 A 相比的更改。
C(远程)-->他们的档案。这仅显示了与 A 相比的更改。
如果更改位于不同的代码行,则您可以从 B 和 C 中获取。
如果更改位于相同的代码行(冲突),则您可以从 B 或 C 中获取。
A (BASE) ‐‐> Original file that currently sits in remote repo.
B (LOCAL) ‐‐> Your file. This shows only your changes as compared to A.
C (REMOTE) ‐‐> Their file. This shows only their changes as compared to A.
If the changes are on different code lines, you take from both B and C.
If the changes are on same code lines (conflict), you take either from B or C.
A 是您的父版本,其中 B 和 C 作为子版本。
这意味着 B 包含 user1/repo1 对 A 所做的更改,C 也包含对 A 但由其他用户 (user2/repo2) 所做的更改
kdiff 为您提供以下选项:从 b 或 c(或两者)或父级“A”中选择修改
A is your parent revision having B and C as child.
Which means B contains the changes done on A by user1/repo1 and C also contains the changes on A but by other user (user2/repo2)
kdiff gives you the option either to select modification from b or c (or take both) or from parent also 'A'
如果我执行了 git rebase,我的观察结果是:
C - 是本地 my_branch 中的内容(即在变基开始并发生冲突之前在我的编辑器中看到)。
B - 分支,我在其上重新建立 my_branch 基础(例如 master 分支)
A - B 和 B 的基础修订版C(在这种情况下对我来说并不重要)
If I did
git rebase
, my observation was that:C - is what in my_branch locally ( i.e. was seen in my editor before the rebase started and conflicts occurred).
B - branch I was rebasing my_branch on top of (say master branch for example)
A - base revision of B & C (which didn't matter to me too much in this case)