102

所以,我们有我们的主开发线,我创建一个分支,开发人员 b 创建一个分支。我们都做一些工作。开发人员 b 完成他的工作,合并回主开发线。我知道他的更改会影响我,而不是稍后处理冲突,我想更新我的分支,使用现在在主开发线中的更改,这样我就可以在合并之前在我的分支中处理它们回到主。

我怎么做?

4

1 回答 1

179

在 Visual Studio 中,打开源代码管理资源管理器:

  • 查看 | 团队资源管理器
  • 从 Team Explorer 中选择您的Team Project,展开它,然后双击Source Control
  • 在 Source Control Explorer 的左侧窗格中,选择您的Team Project
  • 在右侧窗格中,找到您的主线分支,右键单击并选择合并...
  • 目标分支下拉列表中,选择您的开发分支。
  • 如果您想要主线中所有更改的子集:
    • 选择Selected changesets单选按钮,单击Next
    • 选择代表从其他开发分支合并到主分支的变更集,单击下一步
  • 否则,保持选中所有更改到特定版本,单击下一步
    • 下一步让您选择一个版本类型。默认的最新版本显然很简单且不言自明:因为您的分支是从主线创建的,所以您将把所有更改都带到您的分支中。其他选择很简单,但是此处可用的每个选项的教程解释将占用大量空间。
    • 完成向导的其余步骤。
  • 单击完成
  • 如果存在任何错误或合并冲突,系统将提示您解决它们,类似于在自上次签出后进行了其他更改时将更改签入源代码管理时所看到的情况。
  • 合并完成后,所有更改都在分支的本地副本中,但尚未提交到源代码管理。在分支上完成所有构建和测试后,您可以签入合并。从 Visual Studio:
    • 查看 | 其他窗口 | 待更改
    • 确保检查与此合并相关的所有文件,添加描述合并的注释,然后单击Check In

我建议将合并(以及任何必要的合并冲突解决、构建中断、测试中断)保留为它们自己的变更集。也就是说,不要将其他功能工作与合并混合。细粒度的变更集使查看源代码控制历史记录和识别感兴趣的单个变更变得更加容易。将合并工作保留在自己的变更集中有助于实现该目标。

还有用于合并的命令行,tf merge /?从 Visual Studio 命令提示符运行。

祝好运并玩得开心点!

于 2011-03-15T20:58:22.160 回答