TeamCity - GitVersion 生成意外的内部版本号

TeamCity - GitVersion generates the build number unexpected

我有 git 提交和如下标签

最新提交的标签是12.0.0-beta.6。当我运行 GitVersion时,结果如下

所以TeamCity上的内部版本号应该是12.0.0-beta.6,但我不知道为什么GitVersion在TeamCity上生成内部版本号12.0.0-beta.6+8。

我的构建步骤如下

有谁知道为什么 GitVersion 在 FullSemVer 之后会产生多余的“+8”? 如何删除这个多余的“+8”? 非常感谢。

仔细阅读并理解至少GitVerson docs的一部分(第1+2段)

尽可能短的提取

GitVersion will increment the metadata for each build so you can tell builds apart. For example, 1.0.0+5 followed by 1.0.0+6. It is important to note that build metadata is not part of the semantic version; it is just metadata!

+8metadata and not actually part of the version number. In the documentation for the version variablesBuildMetaData描述为:

The build metadata, usually representing number of commits since the VersionSourceSha.

您可以看到相同的值 8 暴露为 CommitsSinceVersionSouce 并且自从其“版本源”以来对分支的每次提交都会增加该值,在本例中是标记 12.0.0-beta.6 提交 549a1d.

元数据不会随着每次构建而增加,而是随着每次提交而增加。我可以看出当前的语言是多么令人困惑,名称 BuildMetaData 也无济于事。由于 BuildMetaData 是一个暴露的变量,我们不能更改它的名字,但我已经提交了 a PR that will hopefully clarify its documentation.