我想创建一个看起来像Major.minor.Date.LastChangeSetInTFS的内部版本号,问题是如何从TFS获取最后一个更改集编号。有没有任何财产,或什么?TFS和带有上次更改集的msbuild版本号
回答
好了终于我找到了解决方案。这是一个任务,它将为您提供最新的变更集编号,并创建一个属性以将其插入程序集信息内部版本号中。主要的问题是缺少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)" />
对于VS2010,TfsLibraryLocation已更改为 “$(DevEnvDir)ReferenceAssemblies \ v2.0”。此外,$(SolutionRoot)自然不存在,但$(SolutionDir)不会。 – 2011-03-17 20:32:08
TfsVersion任务似乎不再适用于使用TFS 2010的此任务。我已在此发布TFS 2010的答案:http://stackoverflow.com/questions/11748338/tf-exe-on-tfspreview/12923581 – 2012-10-16 21:29:47
根据对this page的评论,您可以使用命令行 tf changeset /latest /i
但我无法在家中验证。
'tf changeset/latest/i'获得正确的信息,但如何将它放入一个属性? – 2015-09-24 06:05:17
查看下列扩展项目。你会发现大约5种不同的方式来解决你的问题。
- MSBuild Extension Pack - 积极维护,这个扩展提供超过280个任务
- MSBuild Community Tasks Project - 不保持自2007年以来,这套〜90级的任务还是有一些独特的任务,即平面文件为基础的版本任务
- SDC Tasks Library - 自2008年8月以来未进行维护,此扩展已被吸收到MSBuild扩展包中。如果在MSBuild扩展包中找不到任何东西,请检查这一个,它的300多个任务组合可能会有你需要的。
对不起,我不能在最新的答案发表评论。
您提供的表单中的TfsVersion任务只会为您提供$(SolutionRoot)
中的最新更改集编号。
如果你有什么在$(SolutionRoot)\subdir
更新,所提供的解决方案是行不通的,因为它会给你从$(SolutionRoot)
最新的,而不是从$(SolutionRoot)\subdir
,你会一直想。
我使用tf changeset /latest /i
,它适用于我。
仅供参考...这将获得TFS中的最新变更集,而不管您当前在本地文件夹中有哪些变更集。 – 2012-07-18 00:45:47
- 1. TFS和MSBuild:如何获取最新的变更集版本
- 2. TFS。更改编号。 “获取版本”
- 3. 更改带有msbuild的connectionstrings
- 4. 如何获取tfs修订版本号和最后更改集编号
- 5. 带有神器的触发器TFS版本管理版本号
- 6. 通过带有版本号的TFS重建历史版本
- 7. TFS列出具有特定变更集的所有文件和版本号
- 8. 将tfs变更集号从ccnet传递给msbuild脚本
- 9. TFS旧版本TFS变更集历史
- 10. 使用托管TFS将版本号更改为版本信息
- 11. 从TFS构建MSBUILD的版本构建
- 12. 无法更改Android的版本号和版本号
- 13. 访问上次更改的版本
- 14. msbuild和更新文件tfs
- 15. TFS 2013,带MSBuild的GitTemplate12 14.0
- 16. TFSBuild 2013无法更改msbuild版本
- 17. 在版本号中使用TFS变更集
- 18. 上次本地或当前更改集编号
- 19. TFS,MSBuild和VS.PHP
- 20. NPM版本更新每次重大更改的主要编号?
- 21. TFS 2010不再将更改集与版本相关
- 22. Windows mobile,更改版本号
- 23. 仅匹配主版本号和次版本号的macOS版本号
- 24. TFS 2015内部版本号
- 25. 版本CommonAssemblyInfo.cs和MSBuild的
- 26. 使用visual studio 2010和tfs更改日志和版本控制
- 27. 将Octopack nuget版本号更改为teamcity的内部版本号
- 28. TFS - 注释 - 查看上次更改前的更改
- 29. 使用MSBuild和TFS
- 30. 带有HG版本号的Flash AS3?
这已经回答了,看看:http://stackoverflow.com/questions/545566/aligning-assembly-version-numbers-with-tfs-buildnumber – Burt 2009-10-27 13:53:30
@Burt链接的问题/答案是有关自动生成的TFS BuildNumber,它与变更集号完全不同。 – makhdumi 2015-10-14 22:22:54