我已经阅读了Github行动文件,并且无法理解为什么在发布新版本时,GitHub操作工作流与几乎同时发生的push和release事件一起被触发。换句话说,我的工作流yaml文件是这样启动的,它指定应该同时运行推送和发布事件:
name: Release Actions
on:
push:
paths:
- '**.csproj'
- '**.cs'
- '**.css'
- '**.cshtml'
- '**.dll'
- '**.js'
- '**.sln'
- '**.yml'
release:
types: [published, prereleased]当我发布一个新的发行版(tag)时,我希望它只执行一次。然而,我看到两个事件几乎同时触发(~5-10秒间隔):

现在,release事件确实触发了一个push到我的回购,但唯一正在更新的文件是我的package.json文件。而paths事件的push定义没有将**.json列为路径之一,因此我不希望push事件触发它。
那么,什么可以解释第二个正在发生的事件,push
发布于 2020-01-25 05:58:56
push事件不是提交到分支的提交,而是被推送到refs/tags/<tag>的标记。创建发行版会同时生成release和push事件,这是有意的。
如果您不希望on: push工作流触发标记,您可以添加一个branches过滤器,它将导致标记事件被忽略,如文档中的这里。
name: Release Actions
on:
push:
paths:
- '**.csproj'
- '**.cs'
- '**.css'
- '**.cshtml'
- '**.dll'
- '**.js'
- '**.sln'
- '**.yml'
branches:
- '**'
release:
types: [published, prereleased]https://stackoverflow.com/questions/59906471
复制相似问题