TFS版本管理和GlobalAssemblyInfo

时间:2015-04-23 15:19:11

标签: visual-studio-2013 tfs release-management ms-release-management

我的Visual Studio解决方案有一个GlobalAssemblyInfo.cs来为二进制文件分配版本信息...

我使用的内部版本号为3.4。*表示3是主要版本,4是次要版本,通配符为我提供了自动构建和迭代编号。

我的测试环境可以同时部署多个版本的应用程序。

过去通过将主要版本号和次要版本号附加到应用程序池名称和Web应用程序名称来手动控制,例如

  • ApplicationPool_3_2
  • ApplicationPool_3_3
  • ApplicationPool_3_4
  • ....

我试图让所有这些都进入TFS版本管理并让我的构建工作并启动一个版本,创建应用程序池和Web应用程序等......但我无法弄清楚如何将主要版本号和次要版本号放入TFS版本管理中,以便我可以正确命名应用程序池和Web应用程序。

我使用的是Visual Studio 2013.4,TFS 2013.4和Release Management 2013.4。所有这些都是内部部署。

2 个答案:

答案 0 :(得分:0)

您可以通过在“构建定义”的“变量”选项卡中添加变量来创建主要和次要版本号。然后通过添加“Version .NET Assemblies”构建步骤(如AssemblyVersion(" $(VersionMain)。$(VersionSub1)。$(VersionSub2)。$(VersionSub3)"),将这些变量用于版本号), 的AssemblyFileVersion(" $(VersionMain)$(VersionSub1)$(VersionSub2)$(VersionSub3)"。)

答案 1 :(得分:0)

我最后编写了一个PowerShell脚本并在构建开始时调用它: -

$splitbuildNumber = $env:BUILD_BUILDNUMBER.Split(".")
$ApplicationVersionMajor = $splitbuildNumber[0]
$ApplicationVersionMinor = $splitbuildNumber[1]
$ApplicationVersionBuild = $splitbuildNumber[2]
$ApplicationVersionRevision = $splitbuildNumber[3]

Write-Host “##vso[task.setvariable variable=ApplicationVersionMajor]$ApplicationVersionMajor”
Write-Host “##vso[task.setvariable variable=ApplicationVersionMinor]$ApplicationVersionMinor”
Write-Host “##vso[task.setvariable variable=ApplicationVersionBuild]$ApplicationVersionBuild”
Write-Host “##vso[task.setvariable variable=ApplicationVersionRevision]$ApplicationVersionRevision”`