在 TeamCity 构建中混合现有的和 AssemblyInfo 修补程序生成的版本信息

Mix existing and AssemblyInfo patcher generated version info in TeamCity builds

我启用了一个名为 "AssemblyInfo patcher" 的 "Build Feature" 来调整由我的 TeamCity 构建生成的 DLL 的版本。我重新混合了来自 this other question 的信息并想出了这个 Assembly version format 设置:

1.0.%build.vcs.number%.%system.build.number%

现在我想要实现的最后一件事是让 Major (1) 和 Minor (0) 来自原始文件,而不是将它们硬编码到 TeamCity 中。

我该怎么做?

我猜过/试过:

{1}.{0}.%build.vcs.number%.%system.build.number%

但这给出了一个错误。我试过:

%build.vcs.number%.%system.build.number%

但这会生成 vcs.numberbuild.number 作为 major/minor 而不是构建和修订号,例如1234.21.0.0.

我读过 the AssemblyInfo patcher documentation 但它根本没有解释太多。

我浏览了可用的变量(带有输入字段右侧的图标)但没有找到相关变量。

如何设置 "AssemblyInfo patcher" 以便:

如果可能的话?

您可以使用 File Content Replacer. It provides the ability to reference capturing groups of the regular expression and change only specific parts of AssemblyVersion attribute.