3

我们有一个项目在 TFS 2010 中并且被错误地分支。我们想修复它。这是我们目前的结构:

  • 发展
  • 一体化
  • 主要的

问题是MainIntegration的一个分支,而它又是Development的一个分支,而它应该是完全相反的。

换句话说,首先创建了 Development,然后是分支 Integration,然后是 Main。

现在所有三个分支都有相同的代码(合并)。

那么,是否可以修复 TFS 引用以具有正确的流程:Main -> Integration -> Development

4

1 回答 1

5

据我所知,没有办法在幕后进行这种改变。您手头的问题是 Development 和 Main 分支不合适。解决此问题的最简单方法是将“开发”分支重命名为“主要”,反之亦然,或者使用答案末尾所示的 REPARENT 选项。

我假设在您的情况下,由于您只有一个 DEV 分支(当前分支结构不可能有超过 1 个开发人员),因此在当前版本投入生产之前,下一个版本的开发不会发生,对吗?在这种情况下,您可以等到当前版本结束,然后重命名分支,以便所有 3 个分支在重命名之前同步。

(请记住,“重命名”变更集会影响您分支中的所有文件和文件夹,从下面的评论中我可以理解,如果您在错误的时间执行此操作可能会造成很大的问题。非常明智地选择您的时间,让确保您在分支之间没有任何待处理的更改,它只是在分支之间待处理的“重命名”变更集)

另一种方法是使用 REPARENT。在下面的评论中进行了精彩的讨论之后,我自己尝试了这些选项,解决这个问题的最佳方法是使用“Reparent”选项。我通过创建三个不同的分支自己尝试了这一点。您可以执行以下操作来修复它:

  1. 在 Visual Studio 中,单击 Main 分支 -> 然后 File -> Source Control -> Branching and Merging -> Reparent。选择“无父”,然后单击“重父”

  2. 单击 INT 分支 -> 然后文件 -> 源代码管理 -> 分支和合并 -> 重新父级。选择“主要”,然后单击“重新父级”。

  3. 点击 DEV 分支 -> 然后点击 File -> Source Control -> Branching and Merging -> Reparent。选择“INT”,然后单击“Reparent”。

于 2013-08-17T15:03:34.150 回答