【问题标题】:Accessing the build revision number in Powershell script during TFS build在 TFS 构建期间访问 Powershell 脚本中的构建修订号
【发布时间】:2016-07-21 12:36:09
【问题描述】:

我可以从 IBuildDetail.BuildNumber 获取内部版本号,但这是从构建定义中获取的,因此可能不包括修订号 $(Rev:.r) 或者它可能不在末尾。

所以我想得到这个数字,而不必从内部版本号中解析它。这个属性在构建期间的任何地方都可用吗?

【问题讨论】:

  • 如果不进行解析,您将无法仅获得“修订号”——它不会作为单独的字段存储在某处。 $(Rev:.r) 部分指示 TFS 提供使内部版本号唯一的第一个数字(并且在该特定示例中,在其前面放置一个点)。正如 KMoraz 的回答所暗示的那样,只有最终的内部版本号可用。
  • 好的,感谢您提供的信息,希望不要依赖可以从外部更改的东西。但如果做不到,那就这样吧:)
  • 修订号只能添加在 BuildNumber 的末尾

标签: powershell tfs msbuild tfsbuild


【解决方案1】:

使用build variables

如果您使用的是 TFS 2015,请在 PowerShell 中使用 $Env:BUILD_BUILDNUMBER

参见 MSDN:Use a PowerShell script to customize your build process

对于以前的版本:Team Foundation Build environment variables

【讨论】:

    【解决方案2】:

    您可以使用以下 powershell 脚本来解析内部版本号

    [String]$myrev = $Env:BUILD_BUILDNUMBER
    $result = $myrev.Substring($myrev.LastIndexOf('.') + 1)
    Write-Host $result 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-10-29
      • 2018-03-06
      • 1970-01-01
      • 1970-01-01
      • 2015-12-21
      • 2013-08-18
      • 1970-01-01
      相关资源
      最近更新 更多