我试图将分支名称放入内部版本号,但我无法找到正确的参数。
我使用内部版本号格式:%teamcity.build.branch%.{0}
可行,但在尝试构建默认分支&#39; dev&#39;时,teamcity将其命名为<default>
。
如何解决?
答案 0 :(得分:11)
我能够通过以下方式解决这个问题:
在我的VCS Root中 - 使用git - 将我的分支规范设置为:
+:参/头/(主)
+:参/头/(释放 - *)
+:参/头/(修补程序 - *)
创建配置参数:BuildNumberPrefix = SomeService。%teamcity.build.branch%。release _
将我的内部版本号格式设置为:%BuildNumberPrefix %% build.counter%
然后在我的构建步骤中添加命令行步骤作为第一步,使用以下脚本:
设置t =%BuildNumberPrefix %% build.counter%
echo ## teamcity [buildNumber&#39; %% t %%&#39;]
在构建项目时的Team City项目列表中,您应该看到在执行命令行步骤后,构建编号的一部分将被删除。出于某种原因,重新评估使用teamcity.build.branch变量的BuildNumberPrefix会导致默认值消失并被分支名称替换。
希望这有助于某人。
答案 1 :(得分:0)
看看它是否有助于您解决问题。引用http://youtrack.jetbrains.com/issue/TW-24147的第一条评论:
我们使用特殊的分支名称(
<default>
)是有原因的:当有多个VCS根目录具有不同的默认分支时,我们需要一个分支名称用于构建。您可以从构建参数teamcity.build.vcs.branch。<canonical VCS root name>
获取VCS根目录中使用的真实分支名称。搜索teamcity.build.vcs.branch。在UI中构建的“构建参数”选项卡上。