Github Actions分支部署规则问题:release/x.x分支触发条件不生效求助
解决GitHub Actions分支触发条件不生效的问题
问题根源:你当前使用的
==是精确匹配逻辑,无法识别通配符*,所以没法匹配release/1.0、release/2.0这类分支结构。修改方案:
用
startsWith函数匹配分支前缀(适配所有release/xxx格式分支):if: ${{ startsWith(github.ref, 'refs/heads/release/') }}这个规则会触发所有以
refs/heads/release/开头的分支,包含release/1.0、release/2.0、release/3.1.5等各类子分支。用
matches结合正则精确匹配(仅限release/数字.数字格式分支):if: ${{ github.ref matches 'refs/heads/release/\d+\.\d+' }}这个正则仅匹配
release/1.0、release/2.5这类结构的分支,会排除release/3.1.0、release/test这类不符合格式的分支。
核心逻辑:GitHub Actions的
if条件中,==仅支持完全匹配,通配符*无法直接生效,必须借助字符串函数或正则匹配实现模糊判断。
内容的提问来源于stack exchange,提问作者boomchickawawa
相关产品推荐
相关产品推荐

