代码之家  ›  专栏  ›  技术社区  ›  zeeple

如何在TFS Web界面中查询变更集

  •  5
  • zeeple  · 技术社区  · 8 年前

    enter image description here

    enter image description here

    2 回复  |  直到 8 年前
        1
  •  4
  •   Tomhans.J    8 年前

    你是对的。web界面上的默认TFS工作项查询编辑器中并没有变更集链接字段。因为如果您执行查询并包括外部链接计数(&T);0这实际上将为您提供所有具有关联变更集的工作项。

    另一种方法是使用TFS API来实现它。建议您使用Buck在这个很棒的博客中提供的方式: Listing the work items associated with changesets for a path

    How can I query work items and their linked changesets in TFS?

        2
  •  1
  •   Andy Li-MSFT    8 年前

    您还可以使用RESTAPI查询出与更改关联的工作项。

    External Link Count > 0 (这将给你 带有外部链接的工作项列表,其中还包括链接到 变更集。)

    2-列出工作项 IDs 筛选与变更集关联的工作项。(您也可以将列表导出到.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`