能否在Azure DevOps草稿/未发布拉取请求中应用分支策略覆盖率状态检查?
问题
我在main分支上设置了分支策略,创建合并到该分支的拉取请求(PR)时会触发该策略。已发布的PR能正常运行状态检查,但草稿/未发布状态的PR无法触发检查。是否有办法让状态检查在草稿PR上运行?
根据官方说明:
草稿拉取请求默认不包含审阅者或运行生成,但允许手动添加审阅者和运行生成。要将拉取请求升级为正常拉取请求,只需从拉取请求详情页面点击“发布”按钮。
这看起来是默认预期行为,但似乎有覆盖的方法?如果可以,如何让状态检查自动应用到所有草稿PR?
当前状态检查配置:

回答
可以实现让状态检查在草稿PR上运行,分两种场景处理:
1. 手动触发单次检查
如果只是临时需要在某条草稿PR上运行状态检查,直接在PR详情页面找到「运行」相关入口(通常在状态检查区域或顶部操作栏),手动启动对应的状态检查任务即可。但这种方式需要每次更新草稿PR后手动操作,适合临时需求。
2. 自动触发(针对Pipeline类型的状态检查)
如果你的状态检查是关联Pipeline实现的,可以修改Pipeline的触发规则,让它自动响应草稿PR的更新:
- 打开目标Pipeline的编辑页面
- 在YAML配置中添加/修改
pr触发器,明确开启草稿PR触发:pr: branches: include: - main # 你的目标分支 drafts: true # 允许触发草稿PR的Pipeline运行 - 保存配置后,后续所有指向main分支的草稿PR,只要分支有更新,Pipeline就会自动触发,对应的状态检查也会在PR中同步显示。
注意:分支策略里的「要求通过状态检查」规则本身对草稿PR同样生效,只要状态检查能正常运行并通过,就会满足分支策略的要求。核心是让作为状态检查的Pipeline能在草稿PR时被触发。
内容的提问来源于stack exchange,提问作者Gimmacus
相关产品推荐
相关产品推荐

