2

我正在尝试获取适用于 TFS 源代码控制中特定文件的特定版本的标签列表。到目前为止,我已经获得了一组适用于特定文件的任何版本的标签。有没有人有为特定项目获取标签的经验?

例如,我有 $/Project/Folder/Item.cs,它在变更集 301、401 和 601 中进行了修改。该项目存在标签 Build1 - Build 99。Build1 - Build10 在变更集 301 之前应用(即在创建 Item.cs 之前)。Build96 - Build99 应用于 Item.cs 的 v601。如果我跑

vcServer.QueryLabels(null, "$/Project", null, false, "$/Project/Folder/Item.cs", new ChangesetVersionSpec(6)) 

我得到 Build11 - Build99 作为结果。我还没有弄清楚如何让查询返回少于这么多标签。理想情况下,我运行的查询将返回 4 个标签(Build96 - Build 99)。

这个问题的上下文是一个 TFS 项目,使用 CCNET 作为构建服务器。我正在尝试将工作项与构建相关联,从工作项编号开始。

有小费吗?或者 QueryLabels 的例子?或者 QueryLabels 的文档比MSDN 文档更好?

4

3 回答 3

2

这是可能的,请参见此处:http ://social.msdn.microsoft.com/Forums/en-US/tfsversioncontrol/thread/9f41f37e-4fda-4b56-91a3-f2b7e0c0e22d

基本上,一旦您取回标签列表,您就必须查看每个标签并查看您感兴趣的项目的哪些变更集适用于它。请务必将“includeItems = false”标志传递给 QueryLabels,否则您将不得不查看标签上的每个项目。

于 2010-11-30T22:19:09.740 回答
1

使用 API 绝对可以实现您想要做的事情。我对另一个问题给出的答案是关于在 UI 中查看与历史记录一致的标签。

有关做我认为您想做的事情的更多信息,请查看:

并且

希望有帮助。

马丁。

于 2009-03-16T10:32:55.997 回答
0

当前的 TFS 版本似乎不可能,但下一个版本可能会。

于 2009-03-13T23:26:02.360 回答