我正在寻找一种方法来确定团队项目创建后使用的流程模板。我现在只能通过查看工作项类型来猜测。我在 Visual Studio 中找不到任何选项来检索此信息。我需要知道哪些流程模板用于不是我自己创建的团队项目。
8 回答
如果您检查您的工作项类型:
- Scrum = 产品待办事项
- 敏捷 = 用户故事
- CMMI = 要求
对于 TFS 2010 和 TFS 2012,您可以按照以下流程确定团队项目使用的流程模板:
- 前往团队资源管理器;
- 打开文档文件夹;
- 过程指导;
- 打开 ProcessGuidance.html,这将打开您的团队项目所基于的特定流程模板文档。
参考线程
没有办法说,一般来说。如果您创建(或编辑)流程模板,您可以将标识符放入属性中,然后您将能够跟踪哪些项目有您的模板
为此:编辑 Classification\Classification.xml 添加一个节点:tasks/task/taskXml/properties/property,如下所示:
<property name="templateName" value="myTemplate_1.0.1" />
使用此模板创建项目后,在对象模型中,您将能够从项目中提取此信息:
TfsTeamProjectCollection c = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(myuri);
WorkItemStore wis = tpc.GetService();
ICommonStructureService ICss = tpc.GetService();
foreach (Project p in wis.Projects)
{
string ProjectName = string.Empty;
string ProjectState = String.Empty;
int templateId = 0;
ProjectProperty[] ProjectProperties = null;
ICss.GetProjectProperties(p.Uri.ToString(), out ProjectName, out ProjectState, out templateId, out ProjectProperties);
Console.WriteLine("Project: {0}\tTemplate: {1}", ProjectName, ProjectProperties.Where(n => n.Name == "templateName").FirstOrDefault().Value);
}
templateId 始终为 -1,所以不要认为这会对您有所帮助。
另外 - 如果您有权,我建议将此属性添加到您集合中的所有模板(甚至是默认模板)中,以便您能够跟踪所有未来项目的模板。不知道他们为什么不把它放在默认模板中。(如果有足够多的人抱怨,也许他们会)
我找到了另一种解决方法:在 SharePoint 管理中心中,您可以在网站集列表中看到描述所使用的流程模板的注释。我实际上是在寻找一种通过 TFS API 以编程方式检索它的方法,但找不到它。
使用 witadmin,您可以列出项目中的工作项类型。参数为 TPC url ,/collection
/p 参数为项目名称。这是一个例子(下)。如果您知道特定于流程模板的工作项类型的名称,那么您就知道正在使用哪个流程模板。
我的测试 TFS 的命令控制台输出:
D:\Program Files\Microsoft Team Foundation Server 2010\Tools>witadmin listwitd /collection:http://suluserver:8080/tfs/De
faultCollection /p:"First Team Project"
Bug
Shared Steps
Task
Test Case
User Story
Issue
Risk
User Scenario
Risk-Issue
对于 Visual Studio Online,请转到您的收藏配置文件页面。您可以查看集合中的所有项目,包括流程模板信息。
收藏页面的 URL 格式应为: https://[accountname].visualstudio.com/[collectionname]/_admin
这绝对是晚了,但这里有几个我在搜索时发现的不同资源:
- 如果您有权访问 TFS 数据库:确定流程模板 SQL
- 开源 WinForms 应用程序:https ://github.com/renevanosnabrugge/TFS-ProcessTemplateVersionCheck
我不知道找出这个问题的防故障方法。
我会推荐以下内容:有一个名为 witexport.exe 的 exe 可以导出工作项的 xml。然后,您可以查看 xml 以查看使用了哪种模板。(即如果使用 conchango 模板,您将看到对它的引用。)
要运行它,请启动 VS 命令行提示符(在开始菜单中)。这是一个示例运行:
witexport /f "C:\Type.xml" /t "http:\MyServer:8080" /p MyProject /n "Sprint BackLog Item"