策略的 VSTS REST API 可以更改 "Reset code reviewer votes on new changes" 吗?

Can the VSTS REST API for Policy make changes to "Reset code reviewer votes on new changes"?

我正在尝试编写一个脚本,该脚本使用策略进入所有分支并将策略选项(如下所示)设置为 true。 JSON 显示了您可以 fetch/edit 的可用策略类型,可以在以下 URL:

中找到

https://<账户域>.visualstudio.com/<项目名称>/_apis/policy/types/

遗憾的是,我没有看到 有新更改时重置代码审阅者投票的选项。是否无法从 REST API 进行更改?

对于分支策略中的选项Reset code reviewer votes when there there are new changes选项,它属于策略类型最少审阅者人数 (fa4e907d-c16b-4a4c-9dfa-4906e5d171dd).

并且当您指定分支类型的选项审阅者的最小数量时,您可以指定四个参数:

  • minimumApproverCount: 最低审稿人数。
  • creatorVoteCounts:允许用户批准他们自己的更改。
  • allowDownvotes:即使某些审阅者投票“等待”或“拒绝”也允许完成。
  • resetOnSourcePush: 当有新变化时重置代码审查者投票。

例如添加分支策略最小审阅者数量为 1 和 select 当 repo ad3acf8e-b269-48e5-81bc-354251856b51 中以 features/ 开头的分支有新更改时重置代码审阅者投票,你可以将请求正文用作:

{
  "isEnabled": true,
  "isBlocking": false,
  "type": {
    "id": "fa4e907d-c16b-4a4c-9dfa-4906e5d171dd"
  },
  "settings": {
     "minimumApproverCount": 1,
     "creatorVoteCounts": false,
     "allowDownvotes": false,
     "resetOnSourcePush": true,
     "scope": [
       {
         "refName": "refs/heads/features/",
         "matchKind": "prefix",
         "repositoryId": "ad3acf8e-b269-48e5-81bc-354251856b51"
       }

    ]
  }
}