我有一个发布分支(RB,从 C5 开始)和一个主干(C10)上的变更集,我现在想合并到 RB。
该文件在 C3 处有更改(两者共有),在 RB 上的 CS 7 中有一处,在 C9(主干)处有一处,在 C10 处有一处)。所以我更改文件的历史记录如下所示:
RB: C5 -> C7
Trunk: C3 -> C9 -> C10
当我将 C10 从主干合并到 RB 时,我希望看到一个合并窗口显示我
C10 | C3 | C7
,因为 C3 是共同的祖先修订版,而 C10 和 C7 分别是我的两个分支的提示。但是,我的合并工具向我显示了C10 | C9 | C7
.
我的合并工具配置为 show %1(OriginalFile)|%3(BaseFile)|%2(Modified File)
,所以这告诉我 TFS 选择 C9 作为基本修订版。
这完全出乎意料,与我习惯于在 Mercurial 或 Git 中工作的合并方式完全相反。我做错了什么还是 TFS 试图通过合并让我发疯?
这是默认的 TFS 合并行为吗?如果是这样,您能否深入了解他们为什么选择以这种方式实施它?
我正在使用带有 VS2010 的 TFS 2008 作为客户端。