2017-09-28 65 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`