每次Git Push触发两个GitHub Actions的原因咨询
解决GitHub推送触发两次Actions的问题
可能原因
- 你同时启用了自定义工作流和GitHub官方自动生成的Pages部署工作流。当仓库开启GitHub Pages并选择通过Actions部署时,GitHub会自动创建一个默认的
pages build and deployment工作流,而你自己编写的工作流也监听了推送事件,导致两次触发。
解决方法
方法1:关闭官方自动Pages部署工作流
- 进入仓库的
.github/workflows目录,找到GitHub自动生成的工作流文件(通常命名为pages.yml或类似),直接删除该文件。 - 确保你的自定义工作流(「Commit (11th)」)中已经包含了Pages部署的完整逻辑,比如构建静态文件、上传到
gh-pages分支或使用actions/deploy-pages动作。
方法2:修改自定义工作流的触发条件
如果需要保留两个工作流但避免重复触发,可以调整自定义工作流的on触发规则,比如排除特定分支或事件:
on: push: branches: - main # 只监听主分支推送,避免和Pages工作流的触发分支冲突 paths-ignore: - 'docs/**' # 忽略特定路径的修改,减少不必要的触发
方法3:检查GitHub Pages设置
进入仓库的「Settings」→「Pages」页面,查看「Build and deployment」部分:
- 如果你的自定义工作流已经负责部署Pages,将「Source」选项从「GitHub Actions」改为「Deploy from a branch」(如果不需要自动部署),或者确认是否有重复的部署配置。
验证
推送一次代码到仓库,查看Actions页面,确认只有你的自定义工作流被触发。
内容的提问来源于stack exchange,提问作者Bronzato
相关产品推荐
相关产品推荐

