我想创建一个看起来像 Major.minor.Date.LastChangeSetInTFS 的内部版本号,问题是如何从 TFS 获取最后一个变更集编号。有没有什么财产之类的??

有帮助吗?

解决方案

好的,我终于找到了解决方案。这是一个任务,它将为您提供最新的变更集编号,并创建一个属性以将其插入到汇编信息版本号中。主要问题是缺少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)" />

其他提示

根据对此页的评论,您可以使用命令行 tf changeset / latest / i 但我无法在家验证。

抱歉,我无法对最新答案发表评论。

您提供的表单中的TfsVersion任务只会在 $(SolutionRoot)中为您提供最新的变更集编号。

如果您在 $(SolutionRoot)\ subdir 中有更新的东西,提供的解决方案将无效,因为它将为您提供 $(SolutionRoot)中的最新信息。 ,而不是你想要的 $(SolutionRoot)\ subdir

我使用 tf changeset / latest / i ,它对我来说很好。

查看以下扩展项目。您会发现大约 5 种不同的方法来解决您的问题。

  • MSBuild 扩展包 - 积极维护,此扩展提供超过 280 个任务
  • MSBuild 社区任务项目 - 自 2007 年起不再维护,这组约 90 个任务仍然有一些独特的任务,即基于平面文件的版本任务
  • SDC任务库 - 自 2008 年 8 月起不再维护,此扩展已被吸收到 MSBuild 扩展包中。如果您在 MSBuild Extension Pack 中找不到某些内容,请查看这个扩展包,它包含 300 多个任务,很可能它可以满足您的需求。
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top