3

我目前正在尝试更新版本号。在 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} 参数是一个线索为了我 ?

更新

通过使用 {0} 作为 Teamcity 中的内部版本号并将该内部版本号附加到文件中我自己的内部版本号来实现

<property name="versionNo" value="2.16.3."/>
.
.
<echo message="##teamcity[buildNumber '${versionNo}.${environment::get-variable('BUILD_NUMBER')}']"></echo> 
4

1 回答 1

7

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

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

所以也许:

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

PS。确实没有理由像在那篇文章中那样更改 teamcity 中的内部版本号。你可以离开它{0}

于 2012-01-17T16:21:44.047 回答