You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Azure DevOps命令行创建拉取请求并自动关联源分支独有的工作项

如何通过Azure DevOps命令行创建拉取请求并自动关联源分支独有的工作项

这个问题我之前也碰到过!Azure DevOps网页端创建PR时会自动检测并关联源分支有但目标分支没有的工作项,但az repos pr create命令默认不会触发这个UI层面的自动关联逻辑。不过我们可以通过两步操作来实现这个需求:先获取分支间差异的工作项ID,再创建PR时手动关联这些ID。

步骤1:获取源分支独有的工作项ID

Azure DevOps CLI提供了az repos work-item list命令,专门用来查询两个分支之间关联的工作项差异,正好对应网页端显示的那些工作项。你可以用下面的命令获取目标ID列表:

# 替换成你的仓库名、源分支和目标分支
WORK_ITEM_IDS=$(az repos work-item list \
  --repository "你的仓库名称" \
  --source-branch "release/xxx" \
  --target-branch "prod" \
  --output tsv \
  --query "[].id")

这个命令会输出所有仅在源分支关联、未同步到目标分支的工作项ID,并用空格分隔存储到WORK_ITEM_IDS变量中。如果没有差异工作项,变量会是空的,后续命令也能正常执行。

步骤2:创建PR并关联工作项

接下来用az repos pr create命令创建PR,通过--work-items参数传入刚才获取的工作项ID:

az repos pr create \
  --source-branch "release/xxx" \
  --target-branch "prod" \
  --title "Merge release/xxx to prod" \
  --description "自动创建的PR,已关联源分支独有的工作项" \
  --work-items $WORK_ITEM_IDS

这样创建出来的PR就会和网页端手动创建的一样,自动关联所有符合条件的工作项了。

注意事项

  • 确保你的Azure DevOps CLI是最新版本,旧版本可能没有az repos work-item list这个命令,升级命令:az upgrade
  • 如果工作项数量较多,这个方法依然适用,--work-items参数支持多个ID用空格分隔
  • 执行命令前记得先通过az devops login登录,并设置好默认的组织和项目(可以用az devops configure --defaults organization=你的组织URL project=你的项目名)

备注:内容来源于stack exchange,提问作者Stephane

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 11:57:58