TFS如何合并?

时间:2012-03-30 09:51:17

标签: visual-studio-2010 tfs merge manual

我们有几个开发人员赞成TFS 2010中的手动合并,当你打开两个可视工作室时,一个是源分支,另一个是目标分支,你手动复制和粘贴你的更改。

他们这样做是因为他们认为自动合并是危险的(因为它会带来其他开发人员的变化,即使你不想这样做)。典型的测试案例如下:

来源分支:

TestFile.cs
Changesets:
1. Line 5 changed
2. Line 13 changed

目标分支:

No changes yet.

现在我想仅合并TestFile.cs的变更集#2

如果自动合并,目标分支中的结果TestFile.cs会包含哪些行:原始行5和更改的行13或者行5和13都改变了?

事实上,我已经看到了两种变体,我不知道为什么。

任何关于TFS合并如何工作的精彩描述的链接都很棒。

高级方案: 来源分支:

TestFile.cs
Changesets:
#1. Line 5 changed, Line 6 added
#2. Line 13 changed

目标分支:

No changes yet.

如果我只合并变更集#2,我应该在目标分支中得到什么?我是否只根据变更集#2更改第12行。

1 个答案:

答案 0 :(得分:5)

如果选择合并,将打开以下对话框:
enter image description here
如果您只需选择“下一步”并保留默认设置=“所有更改都达到特定版本“,TFS将考虑您的两个变更集(1& 2):换句话说,它将检查目标分支中的Testfile.cs并编辑两个第5行和第2行。 13.如果选择“选定的变更集”(如上图所示),将出现另一个对话框,您可以在其中选择您真正希望参与合并的候选变更集。因此,如果您现在选择变更集2,TFS将检查目标分支中的Testfile.cs。仅编辑第13行。

你所描述的“手动”合并,是 - 对不起是一个冗长的 - 一种可怕的做法。

修改
关于你的问题 高级场景:Source Branch:我是否只根据变更集#2更改第13行。答案是肯定的“是”。

一种隔离情况的方法是开始在SourceControl&中使用Playground文件夹与同事一起确定会发生什么。 TFS合并非常简单,this较旧的帖子可能对您的调查有用。

我同意您的立场“TFS错误在我的优先级列表中非常低”,另一方面亲自动手 - 我会在您的组织内调查Merge-Practice作为首要问题。在我看来,你描述的内容根本无法继续下去。