为 TFS 项目导入工作项类型定义如何影响集合中的其他项目

How does importing a work item type definition for a TFS project impact other projects in the collection

我在本地使用 TFS 2015,我正在尝试了解流程模板的范围以及其中的工作项类型定义。看了很多微软提供的参考文档,还是一头雾水。

https://docs.microsoft.com/en-us/vsts/work/work-items/guidance/manage-process-templates?view=vsts

https://docs.microsoft.com/en-us/vsts/work/customize/reference/process-templates/customize-process?view=vsts

https://docs.microsoft.com/en-us/vsts/work/work-items/guidance/work-item-field?view=vsts#what-is-a-field-how-are-field-names-used

以上文章明确指出工作项字段在项目集合级别(重点是我加的):

Most process template components that you customize will affect only the team project that you create by using the process template. The exceptions to this rule are global lists, link types, and work item fields. These objects are defined for a team project collection.

为什么当我导入一个工作项类型定义时,我要在集合中指定一个项目来导入它?此处的 importwitd 文档说明我正在将我的更改导入特定项目:

https://docs.microsoft.com/en-us/vsts/work/customize/reference/witadmin/witadmin-import-export-manage-wits?view=tfs-2018&viewFallbackFrom=vsts

importwitd: Imports work item types from an XML definition file into a team project on a server that runs Team Foundation Server.

我一定是没能理解这里的一些复杂问题,但我无法理解更改工作项类型定义的影响半径。

工作项过程模板更改仅限于单个团队项目。如果您有多个团队项目并且更改了工作项类型定义,则必须将其导入到您希望更改可见的所有团队项目中。

根据用于创建团队项目的流程(敏捷、Scrum 或 CMMI),您的团队项目包含 14 个或更多工作项类型 (WIT)。 WIT 是您用来跟踪不同类型工作的对象。当你修改一个WIT的时候,你应该知道你要修改哪个团队项目下的哪个WIT,并导出:

witadmin exportwitd /collection:CollectionURL /p:ProjectName /n:TypeName /f:"DirectoryPath/FileName.xml"

为团队项目集合定义的工作项类型定义的工作项字段。您在 work item field attributes 上所做的更改将应用​​于团队项目集合中的所有团队项目。如果你已经安装了 TFS power tools,你可以在那里查看 Work item field explorer:

此外,您可以使用命令列出字段:

witadmin listfields /collection:CollectionURL /n:RefName [/unused]