如何在TFS构建中增加BuildID宏,我怎样才能使它像++一样?

时间:2013-03-19 14:19:10

标签: visual-studio tfs tfsbuild

我正在研究通过TFS服务器编译的项目。内部版本号格式(在构建设置的进程选项卡中)定义为$(BuildDefinitionName)_$(BuildID)。我无法弄清楚$(BuildID)是如何递增的。如果我在同一小时内排队,比如两个版本,它通常会增加一个,但并非总是如此。

$BuildID weird incrementation

如果距离上一次构建已经过了一周,它可能会增加20或40,我还没有想出任何模式。

但我真正的问题是:如何在每次构建时使其增加1。

3 个答案:

答案 0 :(得分:7)

$(BuildID)用于整个团队项目集合。我假设您的馆藏中有多个团队项目。

因此每个构建触发器都会将此ID增加一个(它基本上是TFS数据库中相应构建的主键)。

答案 1 :(得分:2)

我怀疑你的构建号 每个构建增加1,但你只是查看你自己的构建列表。其他人正在触发构建(可能包括构建服务器,如果启用了CI),并且计数仅按构建定义分开,而不是按用户

这就是为什么更长的延迟会导致更大的增量:如果你等了一周,其他签到者/开发者就会运行更多的构建。

如果您查看所有版本的列表,而不是屏幕截图中的“我的构建”,您可能会看到每次增加1的数字。

您不能像希望的那样简单地更改它,因为如果您将数字设置为“每个用户”,您最终会得到具有相同ID的多个构建。可以覆盖构建脚本的一部分,该脚本创建构建号以包含您的用户名和数字 - 这意味着您的构建ID每次增加1,但每个用户将具有不同的构建名称。 (您的构建版本为DEV_JOHN_123 / DEV_BOB_123,而不仅仅是DEV_123 / DEV_124。)

答案 2 :(得分:0)

您应该使用 $(Rev)脚本增加一个数字。 $(Rev)只能在您的构建名称字符串的末尾使用。

EG。 $(BuildDefinitionName)_ $(日期:yyyyMMdd)$(版本:.r)内部编号格式将在同一天连续三次签到(如果您有持续集成设置):< / p>

  1. MyProject_20130828.1
  2. MyProject_20130828.2
  3. MyProject_20130828.3
  4. 如您所见,最后一部分是在每次办理登机手续时自动增加的。