在团队构建中编辑发布版本的项目属性

时间:2011-04-01 10:38:44

标签: tfs msbuildcommunitytasks team-build

我每晚都在我的TFS服务器上进行夜间构建,并且工作正常。我们计划创建一个clickonce应用程序,当前工作正常,但发布版本(ApplicationVersion)除外,我们希望自动增加每个构建而不是手动输入。需要提到的一点是,我们只希望每个构建版本的Revision部分增加1。例如1.1.1.1第一次和1.1.1.2用于下一次构建。

请注意,因为大量的信息可用于汇编版本,所以我对它一点都不感兴趣,我只是希望我的应用程序版本增加所以请指点我这个方向。

我的VS和TFS服务器是2008.有什么办法我可以在构建之前编辑我的发布版本,就像我在这种情况下编辑projecte-g的InstallUrl一样

<File.RegEx Path="$(BuildDirectory)/Sources/Client/Client/Client.csproj"
      RegularExpression="&lt;InstallUrl&gt;(.*?)&lt;/InstallUrl&gt;"
      NewValue="&lt;InstallUrl&gt;$(InstallUrl)&lt;/InstallUrl&gt;" Force="true"/>

发布版本是

的组合
<ApplicationVersion> 
and 
<ApplicationRevision> 

在我的场景中它的定义如下

<ApplicationRevision>1</ApplicationRevision>
<ApplicationVersion>1.9.4.%2a</ApplicationVersion>

然后

<File.RegEx Path="$(BuildDirectory)/Sources/Client/Client/Client.csproj"
      RegularExpression="&lt;ApplicationRevision&gt;(.*?)&lt;/ApplicationRevision&gt;"
      NewValue="&lt;ApplicationRevision&gt;$(ApplicationRevision)&lt;/ApplicationRevision&gt;" Force="true"/>

    <File.RegEx Path="$(BuildDirectory)/Sources/Client/Client/Client.csproj"
      RegularExpression="&lt;ApplicationVersion&gt;(.*?)&lt;/ApplicationVersion&gt;"
      NewValue="&lt;ApplicationVersion&gt;$(ApplicationVersion)&lt;/ApplicationVersion&gt;" Force="true"/>

但是第一次运行后,值永远不会增加。第一次运行后,该值始终为1.9.4.1。是否有任何方法可以为下一个Build增加它。已尝试使用*+1#+1 ...

进行应用程序修订

1 个答案:

答案 0 :(得分:1)

您应首先将TFS服务器更新为TFS 2012。这将保持对VS2008的支持(TFS 2013不再支持它),并允许您访问不再支持2008的社区工具。

您会在TFS Community Build Extensions找到两个可以满足您需求的自定义活动。

  • ClickOnce - 此更新并配置来自构建
  • 的clickonce部署的清单
  • TfsVersion - 使用正确的递增
  • 创建并填充版本号

不,我在TFS 2008中不知道该怎么做(除了自己动手)。它太老了,不能得到社区的支持。