【问题标题】:How to add an entry to the history of a work item using Azure DevOps REST API?如何使用 Azure DevOps REST API 将条目添加到工作项的历史记录?
【发布时间】:2020-07-27 10:34:30
【问题描述】:

我正在尝试向工作项的历史记录部分添加一个条目。历史是指实际的更改历史,而不是 cmets 部分(System.History 是本部分的字段)。是否有 REST API 可以让我这样做?

Work Item history

【问题讨论】:

    标签: azure-devops azure-devops-rest-api


    【解决方案1】:

    历史记录部分记录了对工作项所做的每一次更改。您可以使用update work item rest api 来更新工作项。然后更新将记录在历史线程中。

    PATCH https://dev.azure.com/{organization}/{project}/_apis/wit/workitems/{id}?api-version=6.0-preview.3
    

    请参阅下面的示例以将标签添加到工作项。该操作将记录在历史记录部分。

    $url="https://dev.azure.com/{org}/{proj}/_apis/wit/workitems/40?api-version=6.0-preview.3"
    $connectionToken='Personal access token'
    $base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($connectionToken)"))
    
    $b= @"
    [
      {
        "op": "add",
        "path": "/fields/System.Tags",
        "value": "Tag1; Tag2"
      }
    ]
    "@
    
    Invoke-RestMethod -Uri $murl -Headers @{authorization = "Basic $base64AuthInfo"} -Method patch  -Body $b -ContentType "application/json-patch+json"
    

    您将看到该条目已添加到历史线程:

    【讨论】:

    • 我试图添加一个条目而不对标准工作项字段进行任何更改。我在工作项中有一个自定义扩展控件,对此的任何更改都不会记录在历史记录中。
    • 恐怕没有可以直接添加历史记录的rest api。您可能必须使用解决方法来更新工作项。例如add a comment,或者创建一个自定义字段并在您对自定义扩展控件进行更改时更新该字段。等
    • 知道了。我打算选择这些选项中的任何一个。感谢您的确认!
    猜你喜欢
    • 2021-06-19
    • 1970-01-01
    • 1970-01-01
    • 2020-04-05
    • 2022-12-12
    • 2020-12-06
    • 1970-01-01
    • 2020-05-12
    • 1970-01-01
    相关资源
    最近更新 更多