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

如何配置GitHub Actions仅触发特定源分支向main的PR工作流

实现仅触发「源分支含_important_且目标分支为main」的PR工作流

GitHub Actions 里没有你设想的 source_branches 配置项,要达成需求,得用「目标分支限定 + Job 条件过滤」的组合方式:

完整配置示例

name: "important-feature-to-main"
on:
  pull_request:
    # 先限定只有向main分支发起的PR才进入工作流触发流程
    branches: 
      - 'main'

jobs:
  execute-workflow:
    runs-on: ubuntu-latest
    # 核心过滤规则:仅当PR的源分支包含_important_时才执行该Job
    if: contains(github.head_ref, '_important_')
    steps:
      - name: 拉取代码
        uses: actions/checkout@v4
      # 在这里添加你需要执行的任务步骤,比如代码检查、构建测试等

细节说明

  • github.head_ref 是 GitHub 提供的内置变量,专门指代 PR 的源分支名称;
  • 如果你需要更精准的分支匹配(比如严格匹配 feature_important_数字 格式),可以用正则匹配替代 contains:
    if: matches('^feature_important_\\d+$', github.head_ref)
    
  • 这种方式是先让所有向main发起的PR触发工作流,但只有符合源分支规则的Job才会执行,避免了不必要的资源浪费,也比在触发阶段过滤更灵活。

内容的提问来源于stack exchange,提问作者Sven van den Boogaart

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 18:07:15