TFS - 让子分支成为主分支并放弃原始父分支

时间:2016-09-04 01:37:04

标签: visual-studio tfs merge

不知何故,我的Visual Studio项目搞得很乱。源代码很好,但是在一些配置文件中搞砸了。经过几个小时的战斗,我发现了一个早期的变更集(变更集20)编译并运行正常,尽管没有最新的更改(我现在已经改变了25)。

然后我执行了以下步骤:

  1. 我将变更集20的副本检索到新的临时工作空间中。
  2. 我使用WinMerge手动将最新的源代码更改合并到我的临时工作空间中的变更集20代码中。
  3. 我将TFS中的主分支(称为MainBranch)分支到一个名为TempBranch的新分支。
  4. 我将合并后的文件(从第2步)手动复制到临时工作空间到TempBranch的主工作区。
  5. 我检查了合并的代码到TempBranch。
  6. 我的Heirarchy现在看起来像这样:

    TFS Heirarchy

    所以,现在,TempBranch拥有所有最新的“好”代码,而且没有任何损坏的配置文件。 MainBranch有错误的配置文件。

    现在,TempBranch正是我想要的,而这正是我想要进一步开发的基础,此时我该怎么做,以便MainBranch与TempBranch基本相同?

    我担心如果我尝试合并分支,它会尝试将MainBranch中的错误配置文件与TempBranch中的好配置文件合并。我想确保对于两个分支中的所有差异,TempBranch版本“获胜”。

1 个答案:

答案 0 :(得分:0)

  1. 您可以尝试将从TempBranch合并到MainBranch ,如果存在冲突,请选择源分支。

  2. 如果历史在MainBranch中不重要,您可以重新显示TempBranch,并选择No parent。然后TempBranch和MainBranch之间没有层次结构,你可以使用TempBranch。

  3. enter image description here