5

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

我试图这样做: 1)主菜单->源代码管理->应用标签 2)出现“新标签”对话框 3)保持路径不变(开发分支) 4)从“版本”下拉列表中选择“变更集” ,输入我的变更集# 5)单击创建。

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

我们在 starteam 中一直这样做:标记与功能相关的变更集,然后将构建标签向上移动到已标记的变更集上。我错过了一些基本的东西吗?(感谢任何指导)

4

2 回答 2

5

请注意名称...您是通过变更集进行标记而不是标记变更集。

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

听起来您更像是在说您希望能够找到一组更改(更改集),而不是在更改集生成的时间点找到所有内容。

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

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

幸运的是,您可以尝试不同的分支策略,只要您认为通过它,如果您不喜欢自己的做法,切换它并不难。

于 2011-05-12T04:06:32.523 回答
0

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

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

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

我不知道为什么它会这样工作。

于 2011-05-11T16:50:22.987 回答