如何通过TFS中的Changeset专门标记?

时间:2011-05-10 20:34:03

标签: tfs label changeset

我们计划从StarTeam迁移到TFS进行源代码管理,并且正在完善我们的ALM程序。也许我误解了标签在TFS中的工作方式,但似乎可以通过 Changeset 将标签应用于文件。我正在尝试在仅在特定变更集中的文件/版本上创建标签。

我试图这样做: 1)主菜单 - >源控制 - >申请标签 2)出现“新标签”对话框 3)保留原样路径(Dev Branch) 4)从“版本”下拉列表中选择“更改集”,输入我的变更集# 5)点击“创建”。

...这会导致整个分支被标记。变更集可能是1到100个文件,因此单独标记文件是不实际的。

我们始终在starteam中执行此操作:标记与功能相关的更改集,然后将构建标签移动到标记的变更集上。我错过了什么基本的东西? (感谢任何指导)

2 个答案:

答案 0 :(得分:5)

请注意名称...您标记的是 更改集,而不是标记 a 更改集。

TFS中的标签就像标记时间点一样。因此,当您通过变更集进行标记时,您基本上就是说这是我的源代码控制在此时的样子。

这听起来更像是你所在的区域,你希望能够找到一组变更(变更集)而不是变更集的时间点。

您可以选择一种允许您按功能分支的分支策略。这样做的缺点是它会涉及很多合并。

另一个选项是将任何特定功能的变更集链接到工作项,然后您将获得一个完成该功能后要合并的变更集列表。在2008年,这可能有点麻烦,因为合并不顺序的变更集可能比必要的更耗时。 (意味着在该分支之间存在变化集,而不是变更集编号是顺序的)

幸运的是,你可以尝试不同的分支策略,只要你认为它不是很难切换,如果你不喜欢你这样做。

答案 1 :(得分:0)

在TFS2010中,我测试了在变更集中添加标签,我看到了您报告的相同行为。

查看变更集时,它只会包含已签入的文件。

在查看在同一变更集上创建的标签时,它将包含分支中的所有文件,每个文件都显示上次签入的变更集版本。

我不知道为什么会这样。