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

5
我在我的TFS服务器中有一个每晚运行的夜间构建,目前正常工作。我们计划创建一个ClickOnce应用程序,目前已经完全正常,除了发布版本(ApplicationVersion)外,我们希望每次构建时自动增加它,而不是手动输入。需要注意的重要一点是,我们只想让修订部分每次构建时自动增加1,例如第一次为1.1.1.1,下一个构建为1.1.1.2。
请注意,有很多关于程序集版本控制的信息可用,所以我对此不感兴趣,我只想让我的应用程序版本递增,请指点我如何操作。
我的VS和TFS服务器是2008版本。是否有任何方法可以在构建之前编辑我的发布版本,就像在此案例中编辑项目的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。有没有办法使其在下一个构建中递增?已经尝试使用*+1#+1等应用程序修订版本...
1个回答

1
您需要先将TFS服务器更新到TFS 2012。这样可以保持对VS2008的支持(TFS 2013不再支持它),并让您访问社区工具,这些工具不再支持2008。
您将在TFS Community Build Extensions中找到两个自定义活动,可以满足您的需求。
  • ClickOnce - 这将更新和配置来自构建的ClickOnce部署的清单
  • TfsVersion - 这将创建并填充正确递增的版本号
抱歉,我不知道如何在TFS 2008中实现这一点(除了自己编写)。它太旧了,不受社区支持。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接