2017-09-28 33 views
3

在TFS web界面我可以查询各种链接类型的项目:如何查询变更在TFS Web界面

enter image description here

然而,变更,而他们在TFS合法的和独特的链接类型不包括在该列表:

enter image description here

使用Web界面,如何做工作项,要么做,或者不包括类型变更集的链接一个查询?

回答

3

你说得对。 Web界面上的默认TFS工作项查询编辑器中没有更改LINKS字段。因为如果您执行查询并包含外部链接计数> 0,这实际上会为您提供所有与其关联的变更集的工作项目。

另一种方法是使用TFS的API来实现它。建议你使用由巴克在这个伟大的博客中提供的方法:Listing the work items associated with changesets for a path

更多方式请看看这个类似的问题:How can I query work items and their linked changesets in TFS?

+1

External Link Count。谁会强制它。 – zeeple

1

您还可以使用REST API查询出符合相关的工作项目变化。

1 - 做一个查询,包括External Link Count > 0(这会给你 与这也包括链接到 变更集外部链接的工作项列表。)

2-名单的工作项目标识和使用PowerShell脚本示例下面的 筛选与更改集关联的工作项目。 (您也可以将列表导出为.csv文件)

$baseUrl = "http://server:8080/tfs/CollectionLC/_apis/wit/workitems?ids=75,76,77,78&"+"$"+"expand=relations&api-version=1.0"    
$workitems = (Invoke-RestMethod -Uri $baseUrl -Method Get -UseDefaultCredential).value|where({$_.relations.attributes.name -eq 'Fixed in Changeset'}) 

$WorkitemResults = @() 

foreach($workitem in $workitems){ 

    $customObject = new-object PSObject -property @{ 
      "workitemId" = $workitem.id 
      "workitemTitle" = $workitem.fields.'System.Title' 
      "State" = $workitem.fields.'System.State' 
      "CreatedBy" = $workitem.fields.'System.CreatedBy' 
      "Project" = $workitem.fields.'System.TeamProject' 
      "AssignedTo" = $workitem.fields.'System.AssignedTo' 
     } 

    $workitemResults += $customObject  
} 

$workitemResults | Select ` 
       workitemId, 
       workitemTitle, 
       Project, 
       State, 
       CreatedBy, 
       AssignedTo #|export-csv -Path C:\WorkitemsWithChangesets.csv -NoTypeInformation`