【发布时间】:2022-04-18 02:33:47
【问题描述】:
我希望我的工作流仅在对特定目录进行更改时触发推送。这可能吗,我错过了什么?我尝试执行如下所示的操作,但没有触发触发器。
name: ABC
on:
push:
branches: [master/my-directory]
pull_request:
branches: [ master ]
【问题讨论】:
标签: github github-actions
我希望我的工作流仅在对特定目录进行更改时触发推送。这可能吗,我错过了什么?我尝试执行如下所示的操作,但没有触发触发器。
name: ABC
on:
push:
branches: [master/my-directory]
pull_request:
branches: [ master ]
【问题讨论】:
标签: github github-actions
push 有一个名为paths 的属性:
name: ABC
on:
push:
branches:
- master
paths:
- my-directory/**
这只会在推送到 master 分支并在 my-directory 目录树中发生更改时触发。请参阅filter pattern cheat sheet 了解所有可能的过滤器模式。
【讨论】:
branches: 列表,它应该会在每个分支上触发。
on:,然后有 schedule: 和 push:,则其中任何一个都将触发工作流。这是有道理的。在触发器中,例如 push:,branches: 和 paths: 的附加条件是 AND。现在,我不是 100% 确定 branches: 和 tags:,但为了这里的答案,声明“推到 master 分支并更改 my-directory 目录树”是正确的。
push 和 pull_request。