首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用bump2version创建自定义版本标记

如何使用bump2version创建自定义版本标记
EN

Stack Overflow用户
提问于 2020-06-09 15:51:27
回答 1查看 4.7K关注 0票数 3

我们使用bump2version在Gitlab中发布版本,使用简单的major.minor.patch (1.1.17)格式。

然而,有时候,使用自定义版本格式(例如1.1.17-test-1 )在常规管道之外创建版本是有用的。

在当前版本的1.1.17上尝试使用这样的bump2versions命令行标志:

代码语言:javascript
复制
bump2version.exe  --search 1.0.17 --replace 1.0.17-testing --verbose --new-version 1.0.17-test-1 part

不要提供任何错误,但是在管理版本字符串的所有文件中都会生成错误的版本字符串。

.bumpversion.cfg文件如下所示:

代码语言:javascript
复制
[bumpversion]
current_version = 1.0.17

[bumpversion:file:CMakeLists.txt]
search = MVR_VERSION "{current_version}"
replace = MVR_VERSION "{new_version}"

[bumpversion:file:VERSION.txt]
search = {current_version}
replace = {new_version}

[bumpversion:file:installer/mvr.iss]
search = #define MyAppVersion "{current_version}"
replace = #define MyAppVersion "{new_version}"

在每个应该更改版本字符串的文件中,更改如下:

代码语言:javascript
复制
set(MVR_VERSION "MVR_VERSION "1.0.17"" )

这不对。适当的搜索/替换将是

代码语言:javascript
复制
set(MVR_VERSION "1.0.17-test-1" )

有关于如何使用bump2versions标志实现自定义版本的提示吗?

EN

回答 1

Stack Overflow用户

发布于 2021-01-28 10:26:08

bump2version v1.0.1开始,它将不再产生语法错误。

你应该做以下几点:

  • 为版本字符串的“test”和“1”部分定义了两个单独的part。让我们称它们为“release”,并将'build'.
  • Configure称为build部件,以使valuesoptional_value.
  • Add具有自定义的parse,以便可以从版本字符串中解析这两个新部件。
  • 添加了多个serialize选项,以便一个版本号可以与这两个可选部分一起存在,也可以不包含这两个可选部分。

这是配置:

代码语言:javascript
复制
[bumpversion]
current_version = 1.0.17
parse = (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)(-(?P<release>.*)-(?P<build>\d+))?
serialize = 
    {major}.{minor}.{patch}-{release}-{build}
    {major}.{minor}.{patch}

[bumpversion:part:release]
first_value = regular
optional_value = regular
values = 
    alpha
    beta
    rc
    test
    regular

[bumpversion:part:build]

[bumpversion:file:CMakeLists.txt]
search = MVR_VERSION "{current_version}"
replace = MVR_VERSION "{new_version}"

[bumpversion:file:version.txt]

[bumpversion:file:define.txt]
search = #define MyAppVersion "{current_version}"
replace = #define MyAppVersion "{new_version}"

这个命令成功了:

代码语言:javascript
复制
bump2version.exe --verbose --new-version 1.0.17-test-1 bogus-part
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62286617

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档