我目前正在尝试更新版本号。在 TeamCity 中使用包含版本号的 Nant 构建文件。
如果我只是使用

<property name="versionNo" value="2.16.3."/>
.
.
<echo message="##teamcity[buildNumber '${versionNo}']"></echo>

在脚本中,buildNumber 更新到 2.16.3,但我也想在这个版本号上有计数器。
意思是我想拥有
<echo message="##teamcity[buildNumber '${versionNo}.{0}']"></echo>

但这不起作用。
有谁知道如何做到这一点,在这个解决方案 http://binary-notes.blogspot.com/2011/05/controlling-application-version-number.html 中尝试了很多东西,但是 ${Version} 参数对我来说是一个线索?

更新

通过在 Teamcity 中使用 {0} 作为内部版本号并将该内部版本号附加到文件中我自己的内部版本号来实现
<property name="versionNo" value="2.16.3."/>
.
.
<echo message="##teamcity[buildNumber '${versionNo}.${environment::get-variable('BUILD_NUMBER')}']"></echo>

最佳答案

TeamCity 有一个内部版本号,它在运行您的构建脚本时将其放入环境中。

您可以访问环境变量 BUILD_NUMBER 并将其附加到您的实际版本号。然后将其回送至 TeamCity。我认为这可以通过 ${sys.env.BUILD_NUMBER} 获得。

所以也许:

<echo message="##teamcity[buildNumber '${versionNo}.${sys.env.BUILD_NUMBER}']"></echo>

附注。真的没有理由像他们在那篇文章中那样更改 teamcity 中的内部版本号。你可以留下 {0}

关于teamcity - 使用文件中的计数器设置 Teamcity 版本号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8895118/

10-15 03:39