Github Actions - 当分支中的特定目录获得更新时,您如何触发推送?

Joe*_*Joe 8 github github-actions

我希望我的工作流仅在对特定目录进行更改时触发推送。这可能吗,我错过了什么?我试着做一些你在下面看到的事情,但它没有触发触发器。

name: ABC

on:
  push:
    branches:  [master/my-directory]
  pull_request:
    branches: [ master ]
Run Code Online (Sandbox Code Playgroud)

Ben*_* W. 25

push有一个属性叫做paths:

name: ABC
on:
  push:
    branches:
      - master
    paths:
      - my-directory/**
Run Code Online (Sandbox Code Playgroud)

这只会master在通过my-directory目录树中的更改推送到分支时触发。有关所有可能的过滤器模式,请参阅过滤器模式备忘单。

  • @Florian确认的行为:顶级触发器是“或”,因此如果您有“on:”,然后有“schedule:”和“push:”,则任何一个都会触发工作流程。这是有道理的。在触发器中,如“push:”,“branches:”和“paths:”的附加条件是 AND。现在,我对 `branches:` 和 `tags:` 不是 100% 确定,但出于此处答案的目的,该语句“通过 `my-directory` 目录树中的更改推送到 `master` 分支“ 是正确的。 (5认同)