如何从构建模板中访问TFS 2013的$(Rev:.r)属性?

时间:2014-11-11 16:14:54

标签: tfs tfs2013

TFS的默认构建模板格式为$(BuildDefinitionName)_ $(Date:yyyyMMdd)$(Rev:.r)

这可以转化为BuildName_20141111.1,用于当天的第一个版本,BuildName_20141111.2用于第二个版本,依此类推。

这一切都很好,但是我想要做的就是在构建服务器编译之前将.r并将其插入到程序集中。

我已经编辑了构建模板来更新各种AssemblyInfo.cs文件等等,并且工作正常。现在我们正在考虑Major.Minor.yyDDD(一年中的某一天)的想法。但是问题就在于最后一部分 - 我们如何从构建模板中获得$(Rev:.r)?

我已经尝试查看各种环境变量,我可以提取整个Build定义字符串(即BuildName_20141111.1)但实际上我想要的只是.1(或更具体地说是“1”)。有没有办法以编程方式执行此操作?我错过了一个环境变量吗?或者有没有办法可以直接访问$(Rev:.r)等内容?

我对TFS相对较新,但这是我可以将很多项目移植到它之前的最后一个障碍。

1 个答案:

答案 0 :(得分:1)

您实际上需要从BuildName参数中解析此问题。如果您使用的是TFS 2013,则可以在PowerShell中执行此操作。以前的版本需要自定义的构建模板。

有预先构建的解决方案。最好的是TfsVersion活动或作为TFS社区构建工具的一部分提供的VersionAssemblies.ps1。

相关问题