推送到某个分支时运行 github 操作

时间:2021-04-25 18:53:16

标签: github-actions

每当我推送到 dev 分支时,我想运行一个操作来检查我的代码是否编译。但是由于我的操作是主要的,所以每当我推送到 dev 分支时它都不会运行。我试图理解文档,但它确实没有任何帮助。代码如下:

name: check-compile
on:
  push:
    branches: 
    - dev

1 个答案:

答案 0 :(得分:0)

有很多方法可以为特定分支运行工作流。

第一个选项

您编写的只有在 dev 是默认分支时才有效,要使其与其他引用/标题一起使用,您需要在分支名称周围添加 '

name: check-compile
on:
  push:
    branches: 
     - 'dev'

More information here

注意:只有在特定分支上存在工作流 .yml 文件时,它才适用于此实现。

第二种选择

您可以为所有推送运行您的工作流,但仅对特定分支执行特定的步骤作业。为此,您可以在 ifjob 级别使用 step 条件:

name: check-compile
on: [push] #to any branch
jobs:
  job:
    runs-on: ubuntu-latest  
    if: github.ref == 'refs/heads/dev' # run this job only for the dev branch
    steps:
      ...

More information here

第三种选择

您还可以使用 ! 过滤分支,以在通知分支之外的任何分支上运行工作流:

on:
  push:
    branches:
      - '*'
      - '!master'