TFS 2017 Build编号

时间:2016-12-29 16:42:42

标签: tfs tfs2017

我们已从TFS 2013升级到2017年TFS,我们在2013年尝试实施的一项功能是能够拥有自定义内部版本号。在上一个方法中,我们有一个名为BuildVersion.XML的文件,它在第一个构建步骤中将读取主要版本,次要版本和修订版本,并在修订版本上使用该版本号+ 1命名构建版本。然后它将更改然后结帐并更新修订号并检入新版本。我知道人们有更新AssemblyInfo的步骤。问题是并非所有代码都是.net应用程序。我们现在还有SSIS包,Cordova iOS / android应用程序,角度站点,带有node.js的aws Lambda函数,它们没有AssemblyInfo的概念。有没有简单的方法来实现这个?

2 个答案:

答案 0 :(得分:3)

你可以在2017年TFS的Team Build中做同样的事情。

您可以通过调用以下任务来更新内部版本号:

Write-Verbose -Verbose "##vso[build.updatebuildnumber]1.2.3.4"

添加PowerShell任务并添加内联脚本以从文件中读取并使用上述内容更新内部版本号。

然后,您可以使用其他脚本以任何方式对应用程序进行版本编制。

您可以在此处查看完整的日志记录命令列表 https://github.com/Microsoft/vso-agent-tasks/blob/master/docs/authoring/commands.md

答案 1 :(得分:1)

您可以使用我的VSTS TFVC tasks与源代码管理进行交互,但我不建议这样做。我为我的客户建立了这些任务,他们正在做你正在做的事情。

不是依赖源代码控制中的文件,而是将BuildNumber从构建定义传递到构建更好的解决方案,让您的第一步更新磁盘上的文件并使用正确的版本号然后运行你的构建。

如果您在构建期间操作文件并检查它们,那么当您扩展到多个构建代理时,存在编号不一致的风险,它很难与并行构建结合使用并构建变量多路复用,并且变得非常难以做到门控Checkins和Shelveset构建。此外,它限制了您将来迁移到Git的选择。