如何使用 Azure DevOps 控制我的内部版本号?

Bas*_*mme 4 devops azure-devops azure-pipelines

我对 Azure DevOps 感到非常沮丧。在我的内部版本号格式中,我希望同时拥有

  • 当我更新我的主要版本和次要版本时,数字重新开始为 0。
  • 但我也希望有一个真正的内部版本号,无论我的内部版本号格式是什么,它都不会重置。该构建号也可以由我的项目的所有构建管道共享。是否可以?

我没有使用 YAML 格式。我使用带有选项页面的经典界面来设置我的构建格式。此时此刻我有这个:

在此输入图像描述

它工作,除了每个月 r 数字从 0 重新启动。我希望它继续。

编辑

在此输入图像描述

我还没有决定我的最终格式。我想了解所有的可能性。现在我发现了这个$(BuildID)房产,我还有另一个问题。是否有可能有类似于$(Rev:r)变量的东西,但只检查我的内部版本号的左侧部分。

例子:

4.16.$(SequenceFor[4.16]).$(BuildID)
Run Code Online (Sandbox Code Playgroud)

事实上我想手动设置Major和Minor版本,让系统一一更新Build并使用全局的Revision $(BuildID)

Sha*_*zyk 6

当内部版本号以任何字符更改时,都会$(rev:r)重新启动,因此这就是每当主要/次要或状态更改时它都会重新启动的原因。

因此,如果您想使用增量唯一编号,则不能使用,$(rev:r)因为它将在每次构建时重新启动。

如果您想要一个取决于主要数字和次要数字的数字,您需要使用counter 表达式

创建2个变量:

  1. major-minor=4.16

还有一个取决于其值的变量,也是一个计数器:

  1. revision=$[ counter(variables['major-minor'],0) ]

在此输入图像描述

内部版本号将为:

$(major-minor).$(revision).$(Build.BuildId)
Run Code Online (Sandbox Code Playgroud)

major-minor现在,如果您将(4.175.16)更改为,revision则将再次更改为0