Github工作流程操作的格式TAG发布参考

问题描述

我想用v作为前缀,产品类型作为后缀标记我的发行版。 例如。初始版本 v1.0.0-alpha01-内部 v1.0.0-alpha01-外部

现在,我正在运行GitHub动作工作流来发布发行版。

map

使用上面的代码片段,我得到了我的新版本 v1.0.0-alpha01-internal v1.0.0-alpha01-external ,现在我不需要我的版本与TAG相同,因此我想从发布TAG的开头开始剪切v,从-tag的末尾剪切-internal或-external。

期望新版本为 1.0.0-alpha01

解决方法

NEW_VERSION=$(echo "${GITHUB_REF}" | cut -d "/" -f3) | cut -c 2- | cut -c 1-13可能是

,

这时,您的问题仅在于Bash中的字符串操作,与GH或GH Actions无关。

因此,您可以找到在Bash中修改字符串的最佳方法。我建议您从这里开始:

https://www.baeldung.com/linux/bash-string-manipulation

TAG_VERSION=v1.0.0-alpha01-internal
TAG_VERSION=$(echo ${TAG_VERSION//v/})
TAG_VERSION=$(echo ${TAG_VERSION//-internal/})
TAG_VERSION=$(echo ${TAG_VERSION//-external/})

或使用sed

这里可能会使用更好的正则表达式,但是您可以根据所有用例进行决定

echo $TAG_VERSION | sed 's/-internal//g' | sed 's/-external//g' | sed 's/v//g'

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...