程序集版本中使用SVN版本號(hào)自動(dòng)生成方法詳解
本節(jié)和大家討論一下程序集版本***一位使用SVN版本號(hào)的自動(dòng)生成方法,這里就向大家簡單介紹一下,歡迎大家能和我一起學(xué)習(xí)SVN版本號(hào)的相關(guān)知識(shí)。
使用SVN進(jìn)行源代碼版本控制時(shí),我們希望能夠快速找到每個(gè)發(fā)布版本對(duì)應(yīng)的源代碼版本,現(xiàn)在可以通過在程序集的版本信息中增加SVN源碼版本信息的方式來實(shí)現(xiàn)我們的要求。
現(xiàn)在我們定義每個(gè)程序集的版本信息的最末段表示SVN的源碼版本。詳細(xì)定義如下:
程序集版本號(hào)分為4段,例如1.0.4.23。
***段為主版本號(hào),項(xiàng)目一但啟動(dòng)則不會(huì)更改。
第二段為次版本號(hào),在項(xiàng)目功能做較大調(diào)整時(shí)增加,增量為1。
第三段為修訂版本號(hào),通常在解決缺陷或者細(xì)微功能變化時(shí)增加,增量為1或者2。該版本號(hào)分奇數(shù)和偶數(shù)兩種。奇數(shù)表示測試版本,偶數(shù)表示穩(wěn)定版本。
第四段為SVN源碼版本號(hào),該版本號(hào)通過腳本自動(dòng)生成。
使用腳本自動(dòng)生成SVN版本號(hào)的先決條件:
安裝TortoiseSVN;
源代碼在SVN版本管理控制之下。
修改項(xiàng)目設(shè)置,使之能夠自動(dòng)生成SVN版本號(hào):
修改Properties\AssemblyInfo.cs文件,將程序集版本信息的最末一段改為$WCREV$。并增加一行"//***發(fā)布時(shí)間:$WCDATE$"
例如:
[assembly:AssemblyVersion("1.1.0.$WCREV$")]
[assembly:AssemblyFileVersion("1.1.0.$WCREV$")]
//***發(fā)布時(shí)間:$WCDATE$
將AssemblyInfo.cs文件重名為AssemblyInfo.tpl,并添加到源代碼管理。
從源代碼倉庫中刪除AssemblyInfo.cs,并排除它,使其不受版本管理。
添加本文中的GenerateAssemblyInfo.bat文件到Properties目錄中,并添加到源代碼管理。
修改項(xiàng)目屬性,在生成事件的預(yù)生成事件命令行中添加以下命令。
"$(ProjectDir)\Properties\GenerateAssemblyInfo.bat""$(ProjectDir)".\Properties\AssemblyInfo.tpl.\Properties\AssemblyInfo.cs
注意:
在編譯之前記得提交你的更改和更新別人的更改,這樣才能確保版本號(hào)的正確。
今后要對(duì)程序集信息進(jìn)行修改時(shí),請(qǐng)對(duì)AssemblyInfo.tpl文件進(jìn)行修改。
如果生成的AssemblyInfo.cs文件出現(xiàn)中文亂碼,打開AssemblyInfo.tpl,在文件->高級(jí)保存選項(xiàng)中將文件編碼改為UTF-8即可。本節(jié)介紹SVN版本號(hào)問題完畢。
【編輯推薦】
























