回答
我使用這個MSBuild Task來自動遞增我的內部版本號 - 需要在* .csproj或* .vbproj文件中進行一些手動修改,但它的工作原理非常完美,而且非常靈活。
Visual Studio中有一個內置的mecanism爲:
內AssemblyInfo.cs
,通過這一更改設置:
[assembly: AssemblyVersion("1.0.*")]
星號標誌指示Visual Studio來對各建一個版本1.0分配。 ds,其中d是自2000年2月1日以來的天數,s是自午夜/ 2以來的秒數。
編輯:
看看這個網頁:http://www.codeproject.com/KB/dotnet/ManagingAssemblyVersions.aspx沒有對多信息:如何管理的版本號。
IIRC在您的解決方案資源管理器中,單擊「顯示所有文件」,我相信它是靠近窗口頂部的第三個文件。
(雙擊)「我的項目」。
接下來,在「AssemblyInfo.vb的」
在代碼編輯器中雙擊,直到你已經達到底部向下滾動。
註釋掉
更換
<Assembly: AssemblyVersion("1.0.0.0")>
與
<Assembly: AssemblyVersion("1.*.0")>
點擊 '保存'。
然後你就完成了!
是的,但是這並不能很好地推進內部編號 - 它只是抓住當前時間和日期並將它粘在那裏,所以你的內部編號看起來像1.0。 21643.23849等等...... – 2009-11-04 15:27:13
謝謝你,生病說一聲。我記得我的一位同事曾經提過一次。 – CaRDiaK 2009-11-04 15:58:12
一個靈活的選擇是創建一個帶有版本編號方案的T4模板,並引用Visual Studio從其生成的.cs文件。這樣的模板的一個例子:
<#@ template language =「C#」#> // //此代碼是由工具生成的。手動進行的任何更改將丟失 //下次重新生成此代碼。 //
using System.Reflection;
[組件:的AssemblyVersion( 「1.0.1 <#= this.RevisionNumber#>。」)] [組件:的AssemblyFileVersion( 「1.0.1 <#= this.RevisionNumber#>」)] <# + int RevisionNumber =(int)(DateTime.UtcNow - new DateTime(2010,1,1))。TotalDays;
>
在這個例子中的版本號從1月1日,2010年被設置爲天數,但可以提供任何自定義編號方案,因爲它是純C#。
我寫了一個blog post這也解釋了更詳細此技術:
謝謝,我會檢查你的博客,瞭解這種技術。 – Dani 2010-04-26 07:02:35
- 1. 每次構建後自動遞增appx包版本
- 2. VS 2008中的自動構建腳本
- 3. VS 2008解決方案自動檢查出每次
- 4. 自動項目構建版本號
- 5. 使用Mercurial自動構建版本號
- 6. 構建不破次要版本變更
- 7. Git多個版本分支,構建自動增量版本號
- 8. 如何獲取上次成功構建的版本號?
- 9. 我的VS 2008解決方案中的項目每次重建
- 10. 如何在Xcode每次構建之前運行Python腳本?
- 11. Visual Studio每次構建
- 12. 自動化構建服務器TFS 2008(vs 2008)
- 13. 如何在每次發佈VS 2010之前做出SVN提交
- 14. 爲什麼我們每次增加構建編號,即使是每晚構建?
- 15. SPListItem.UpdateOverwriteVersion創建次要版本?
- 16. 如何自動提取版本號?
- 17. Googe Apps腳本自動回覆每次會話一次
- 18. 僅匹配主版本號和次版本號的macOS版本號
- 19. 檢查每日構建的當前版本以進行自動安裝嗎?
- 20. Can bzr可以指定主版本號和次版本號?
- 21. 構建測試版本號
- 22. 無法安裝SQL Server 2008:以前版本的VS 2008錯誤
- 23. 自動創建的每個新版本
- 24. 自動更新版本號
- 25. NPM版本更新每次重大更改的主要編號?
- 26. Google Store Beta,每次增加版本?
- 27. 創建每次
- 28. TFS 2012自動構建依賴當前版本的項目
- 29. Android版本的自動Javadoc構建
- 30. 顛覆作爲版本增量在每次提交?
我認爲這是針對我需要的更好的東西,它需要我一些時間來測試它,但它看起來不錯!謝謝 ! – Dani 2009-11-04 15:39:29
這是一個小問題,我使用一個svn受控環境,如果我不檢查它們,它會鎖定這些文件。 使用此解決方案使我鎖定assembly.cs爲了構建。 我想有沒有辦法避免這個...但它需要的解決方案的樂趣... – Dani 2009-11-05 11:01:06