如何在新建PR时触发Azure DevOps流水线?
实现Azure DevOps新建Pull Request时触发流水线
问题说明
你当前的配置只开启了持续集成(CI)触发器(如图所示),导致分支更新就触发流水线,而非新建PR时触发。
解决方法分两种配置方式:
一、通过UI界面配置
- 打开目标Azure DevOps流水线,点击右上角编辑
- 切换到触发器标签页,找到拉取请求验证模块
- 勾选「启用拉取请求验证」,在分支筛选器中添加你需要监控的目标分支(比如
main、develop) - 关键调整:如果不需要分支更新时触发流水线,找到持续集成模块,要么关闭CI触发器,要么删除/调整分支筛选规则,避免覆盖PR触发逻辑
- 保存配置后,新建PR到目标分支时就会自动触发流水线
二、通过YAML配置流水线
直接在你的azure-pipelines.yml文件中添加PR触发器,并关闭不必要的CI触发器:
# 关闭默认的CI触发器(分支更新不再触发) trigger: none # 配置PR触发器,指定需要触发的目标分支 pr: branches: include: - main - develop # 可选:排除不需要触发的分支 exclude: - feature/*-temp
配置完成后,只有向main/develop分支提交PR(包括新建PR)时,流水线才会触发。
额外注意事项
- 检查流水线权限:确保流水线拥有仓库的PR触发权限(默认已开启,若未生效可到项目设置-权限中调整)
- 避免触发器冲突:如果同时保留CI触发器,要确保其分支筛选和PR触发器的分支范围不重叠,否则分支更新仍会触发流水线
内容的提问来源于stack exchange,提问作者Felipe Cardoso
相关产品推荐
相关产品推荐

