TFS和MSBuild的版本与去年变更号码(TFS and msbuild version numb

2019-09-01 13:05发布

我想创建它看起来像一个Major.minor.Date.LastChangeSetInTFS版本号,问题是如何从TFS获得最后变更号码。 有没有什么财产,什么?

Answer 1:

OK终于我找到了一个解决方案。 这里有一个任务,将提供最新的变更数量,并创建一个属性来插入它在大会信息的版本号。 主要的问题是缺少TfsLibraryLocation属性(如果没有它,它应指向在GAC库,但事实并非如此)

<Target Name="GetVersionChangeSet">
<TfsVersion
  TfsLibraryLocation="C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies"      
  LocalPath="$(SolutionRoot)">
  <Output TaskParameter="Changeset" PropertyName="ChangesetNumber"/>
</TfsVersion>
<Message Text="TFS ChangeSetNumber: $(ChangesetNumber)" />



Answer 2:

据对评论这个页面 ,你可以使用命令行tf changeset /latest /i ,但我无法验证,从家里。



Answer 3:

对不起,我不能在最新的答案发表评论。

您所提供只会给你的最新变更号码的形式TfsVersion任务$(SolutionRoot)

如果你有什么新的$(SolutionRoot)\subdir ,所提供的解决方案是行不通的,因为它会给你从最新的$(SolutionRoot)而不是从$(SolutionRoot)\subdir ,你会希望。

我用的是tf changeset /latest /i和它为我工作得很好。



Answer 4:

看看下面的扩展项目。 你会发现在5个不同的方法来解决你的问题。

  • MSBuild扩展包 -积极维护,这个扩展提供超过280个任务
  • 的MSBuild社区任务项目 -自2007年以来没有保持,这一套〜90级的任务还是有一些独特的任务,即平面文件为基础的版本任务
  • SDC任务库 -自2008年8月不能维持,这种扩展已经吸收到MSBuild扩展包。 如果有什么东西你不能在MSBuild扩展包发现,检查这一个,以其300多个任务机会的投资组合是,它可能有你所需要的。


文章来源: TFS and msbuild version number with last changeset