我想創建一個看起來像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