Azure devops - 内部版本号与内部版本 ID

Azure devops - build number vs build id

文档说:

Build.BuildId - 已完成构建的记录 ID。

Build.BuildNumber - 已完成构建的名称,也称为 运行 编号,可以自定义。

来源:https://docs.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml#build-variables-devops-services

如果您创建一个新的构建管道并且不自定义 BuildNumber 格式:

it will be given a unique integer as its name

这样的话,BuildNumber和BuildId是不是完全一样?

不,当您创建新的构建管道而不自定义构建编号时,它将与构建 ID + 提交消息相同。

例如(4348 是构建 ID):

4348 test commit

In this case, is BuildNumber and BuildId exactly the same?

是的。不自定义BuildNumber格式时,两个变量的值相同

举个例子:

未定义内部版本号:

输出两个变量:

- powershell: |
   echo $(build.buildid)
   
   echo $(build.buildnumber)
  displayName: 'PowerShell Script'

结果:值相同

不,没必要一样。 我刚刚检查了我的经典和 yml 管道。

对于 classic build id 和 number 是整数,如果没有自定义则相同。

对于 yml 构建管道和构建 ID 是一个整数,构建编号由当前日期和每天的尝试次数组成。根据 documentation,格式为 $(Date:yyyyMMdd).$(Rev:r)