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

如何为特定前缀分支配置不同的专属Codeowner?

可以实现该需求

原生的Codeowners文件仅支持基于文件/目录路径匹配审核者,但你可以通过以下两种方式实现按分支前缀配置不同Codeowner的需求:

方式一:分支保护规则+指定审核组

这是最直接的原生方案,无需额外脚本:

  • 针对testing/**前缀分支:
    1. 进入仓库设置的「分支保护规则」页面,新建规则,分支名称匹配testing/**
    2. 开启「需要拉取请求审查才能合并」选项
    3. 在「需要特定人员批准」栏添加该分支对应的Codeowner组
  • 针对qa/**前缀分支:
    重复上述步骤,创建独立的分支保护规则,添加另一组对应的Codeowner

方式二:GitHub Actions动态添加审核者

如果需要结合路径和分支的双重规则,用GitHub Actions实现更灵活的逻辑:

  1. 在仓库中创建.github/workflows/branch-codeowners.yml文件
  2. 编写工作流,判断当前分支前缀后动态添加对应审核者

示例工作流代码:

name: Add Branch-specific Reviewers
on: [pull_request]

jobs:
  assign-reviewers:
    runs-on: ubuntu-latest
    steps:
      - name: Detect branch prefix
        id: branch-check
        run: |
          BRANCH="${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}"
          if [[ "$BRANCH" == testing/* ]]; then
            echo "reviewers=team-testing" >> $GITHUB_OUTPUT
          elif [[ "$BRANCH" == qa/* ]]; then
            echo "reviewers=team-qa" >> $GITHUB_OUTPUT
          fi
      - name: Assign reviewers
        if: steps.branch-check.outputs.reviewers
        uses: actions/add-reviewers@v1
        with:
          reviewers: ${{ steps.branch-check.outputs.reviewers }}
          token: ${{ secrets.GITHUB_TOKEN }}

内容的提问来源于stack exchange,提问作者Kodeswaran

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 12:23:20