【问题标题】:Assembly Version in Teamcity Build Number FormatTeamcity 内部版本号格式的程序集版本
【发布时间】:2015-10-30 12:28:14
【问题描述】:

在我的组装版本中,我想设置前 3 位数字,第四位应该通过 Teamcity 设置。

示例: 我在我的组装中设置了 2.0.1.0。 然后我的 Teamcity 应该这样做: 2.0.1.90、2.0.1.91……

目前我有: 2.0.1.%build.counter%

但我想要的是,2.0.1 是通过我的组装版本而不是通过硬数字设置的

【问题讨论】:

标签: teamcity


【解决方案1】:

您使用的是哪个 Teamcity 版本? Teamcity 9.1 有一个新的构建功能File Content Replacer,它允许您使用正则表达式替换文件的内容。然而早期版本的 teamcity 没有内置这个,所以对于他们来说,你可以自己编写它,可能是一个 powershell 脚本或 MSBuild 目标。

MSBuild 目标 SetRevisionNumber 的示例代码

<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <UsingTask AssemblyFile="MSBuild.Community.Tasks.dll" TaskName="MSBuild.Community.Tasks.FileUpdate" />

  <Target Name="SetRevisionNumber" Condition="$(RevisionNumber) != ''">
    <Message Text="Setting Revision Number to $(RevisionNumber) in $(AssemblyVersionFile)" Importance="High" />

    <FileUpdate Files="$(AssemblyVersionFile)"
      Regex="\[assembly: AssemblyVersion\(.(\d+)\.(\d+)\.(\d+)\.(\d+)"
      ReplacementText="[assembly: AssemblyVersion(&quot;$1.$2.$3.$(RevisionNumber)" />

  </Target>
</Project>

【讨论】:

    猜你喜欢
    • 2011-01-02
    • 1970-01-01
    • 2011-10-03
    • 1970-01-01
    • 2013-03-18
    • 2017-02-15
    • 1970-01-01
    • 2016-02-03
    • 2011-02-20
    相关资源
    最近更新 更多