如何自定义Pull Request完成后关联工作项的变更记录格式?
自定义PR完成时关联工作项的变更记录格式
目前Azure DevOps原生没有提供直接的设置选项,来修改PR合并完成时自动添加到关联工作项中的变更记录格式,使其自动生成带可点击PR链接(!1234格式)的内容。不过可以通过以下几种替代方案实现需求:
1. 通过Azure DevOps Pipeline自定义任务实现
可以在PR合并触发的Pipeline中添加自动化任务,调用Azure DevOps API来更新工作项,添加包含PR链接的自定义注释:
- 首先确保你的Pipeline配置为PR合并后触发(在Pipeline触发器设置中启用"Pull request completion")
- 添加PowerShell或Bash任务,执行以下逻辑:
- 获取当前合并的PR ID
- 查询该PR关联的所有工作项ID
- 对每个工作项添加包含
!${PR_ID}格式的自定义注释
示例PowerShell脚本(需预先安装Azure CLI并配置DevOps权限):
# 获取当前PR ID $prId = $(System.PullRequest.PullRequestId) # 查询关联的工作项ID $workItems = az boards work-item query --query "value[].id" --output tsv --wiql "SELECT [System.Id] FROM WorkItems WHERE [System.Links.LinkType] = 'Pull Request' AND [System.Links.TargetId] = $prId" # 为每个工作项添加自定义注释 foreach ($wi in $workItems) { az boards work-item update --id $wi --add-comment "Completing !$prId and the associated work items" }
2. 使用Azure DevOps Marketplace扩展
可以在Azure DevOps Marketplace中搜索自动化工作项注释的扩展,部分扩展支持自定义PR完成时的工作项注释模板,允许你插入PR链接变量(如!{PR_ID})。例如类似"Work Item Comments Automation"这类工具,可配置触发条件为PR合并,自动生成带链接的注释。
3. 手动添加自定义注释(临时方案)
如果PR数量较少,可在合并PR前,手动打开关联的工作项,添加包含!1234格式的PR链接注释,这种方式无需配置,但依赖人工操作。
需要注意的是:原生的Complete associated work items after merging选项生成的记录是系统固定格式,无法通过项目或仓库设置修改,因此上述替代方案是目前可行的实现路径。
内容的提问来源于stack exchange,提问作者Neil Gatenby
相关产品推荐
相关产品推荐

