当推送到分支时,Github Action未被触发。

3

我在.github/workflows文件夹下的build_and_test.yml文件如下:

name: CI

on:
  push:
    branches:
      - main
      - name-of-my-branch
  pull_request:
    branches:
      - main

jobs:
  build:
    # Code to build

然而,当我推送到除了main分支以外的任何分支时,构建不会触发。有什么想法是为什么吗?

2个回答

16

我意识到这个 Github Actions 文件在主分支上,而 Github 使用为正在推送的分支配置的操作。如果name-of-my-branch在其.github/workflows/build_and_test.yml中有不同的on: push: branches:指定,则不执行任何操作。因此,在main分支中的branches:name-of-my-branch有点具有欺骗性 - 只有当该分支在自己的.yml下被指定为push时,才会在推送时触发构建。

我从main拉取到name-of-my-branch以更新build_and_test.yml,然后进行了推送,并触发了构建。


你最后也帮了我。我的 .github/ 文件夹在 terraform 文件夹里面。我只是把它移动到了仓库的根目录,然后就成功了。 - no-stale-reads

0
根据经验,另一个可能性是,在执行 "git add *"时,.github目录及其内部的yaml文件并未被暂存,因此推送时未触发任何操作。
我不得不特别执行 git add .github/workflows/myaction.yml 以确保它已经被暂存。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接