您会看到162489和162990,如何合并?
答案 0 :(得分:27)
我猜你想把这两个特定的变更集合并到另一个分支中。
您不能一次合并多个变更集,除非变更集按顺序排列。
使用tf
命令行工具,通过使用波形符分隔版本来指定版本范围。
tf merge /recursive /version:C162489~C162990 "$/SourceBranch" "$/TargetBranch"
在这种情况下,还将包括更改162987和162967。
如果您在Visual Studio中使用UI,则合并对话框将阻止您选择多个单独的更改集,除非它们按顺序排列。
要将两个单独的变更集合并到另一个分支中,您必须分两步完成:
合并162489然后162990(从合并最旧的变更集开始,以防两个变更集包含对相同文件的更改)。
然后,目标分支的工作空间将包含两个变更集的更改,现在您可以将合并签入为目标分支中的一个变更集。
答案 1 :(得分:8)
在TFS合并帮助中 - http://msdn.microsoft.com/en-us/library/bd6dxhfy(v=VS.100).aspx - ,您在第二个示例中看到如何合并一个变更集:
合并/版本:C137~C137 branch1 branch2 / recursive
这就是你追求的目标吗?
答案 2 :(得分:7)
试试这个
tf merge /recursive /version:C162489~C162489 "$/SourceBranch" "$/TargetBranch"
tf merge /recursive /version:C162990~C162990 "$/SourceBranch" "$/TargetBranch"
如果您在这些变更集中没有冲突代码更改,TFS 2010将合并连续的合并。
答案 3 :(得分:2)
合并必须以连续的方式进行。在您的情况下,合并两个不连续的变更集是不安全的,因为您可以对可以对相同文件执行的更改进行松散。这就是TFS客户端不允许您这样做的原因。