如何配置GitHub Actions工作流仅响应标准SemVer标签推送?
解决GitHub Actions正式发布工作流的标签匹配问题
完全可以通过正则表达式精确过滤标签,让第二个工作流只触发标准SemVer正式版标签。
具体配置调整
把你第二个工作流里的on.push.tags替换成以下规则:
on: push: tags: - 'v[0-9]+.[0-9]+.[0-9]+'
这个规则会精准匹配v开头、后面跟着主版本号.次版本号.修订版本号格式的标签(比如v2.3.2),不会命中带-release.x后缀的预发布标签。
如果习惯用简写正则,也可以写成:
on: push: tags: - 'v\d+\.\d+\.\d+'
两种写法效果一致,GitHub Actions支持这两种正则语法。
额外注意点
- 你的第一个预发布工作流触发规则不用改,比如原来匹配
v*-release.*之类的,这样两个工作流的触发条件完全互斥,不会同时运行。 - 配置完可以分别推送一个正式版标签和预发布标签测试,确认触发逻辑符合预期。
内容的提问来源于stack exchange,提问作者James Ives
相关产品推荐
相关产品推荐

