GitHub Actions中feat/fix前缀分支触发过滤器失效求助
GitHub Actions PR工作流不触发的问题解决
问题根源
你当前配置的branches字段是用来过滤PR的目标分支(也就是PR要合并到的分支),而非发起PR的源分支。如果你的PR目标分支不是feat/**或fix/**开头的,工作流自然不会触发。
正确配置方案
如果要针对发起PR的源分支做过滤,需要在工作流的jobs中添加if条件,通过github.head_ref判断源分支前缀:
name: <action name> on: pull_request: types: [opened, synchronize, reopened] # 可选,指定需要触发的PR事件类型 jobs: your_job_name: if: startsWith(github.head_ref, 'feat/') || startsWith(github.head_ref, 'fix/') runs-on: ubuntu-latest steps: # 这里写你的工作流步骤
额外排查点(若你确实想过滤目标分支)
如果你的需求本来就是过滤目标分支,但工作流仍不触发,检查以下内容:
- 确认PR的目标分支完全匹配
feat/**或fix/**格式(比如feat/new-module、fix/login-bug都符合,注意分支名区分大小写) - 确保工作流文件已经推送到仓库的默认分支(如main),PR事件的工作流配置是从默认分支读取的
内容的提问来源于stack exchange,提问作者Matheus Ferreira
相关产品推荐
相关产品推荐

