原文:http://blog.sina.com.cn/s/blog_56d8ea900100y9cf.html
使用SVN+Eclipse做軟件版本控制。 (2009年5月)
1,SVN目錄結構
Trunk : 主干目錄,此目錄下的文件為基准文件
Branches : 用於開發的分支目錄
Tags : 用於發布的版本目錄
下圖是基於eclipse svn repositores查看的目錄結構
2,分支的版本
Branches 的定義規則: project name + 日期時間 + 功能點 , 比如 sns-home_20090506_profile , 在創建每一個branch時,必須增加標注。
3,創建新分支
(圖片2 : 開始創建分支)



(圖片5 _ 1 : 標注分支)

4,從分支合並到主干
1、當branch版本已經開發和通過測試后,可以通過subeclipse 合並到trunk,可以合並整個項目也可以合並單個文件, 如下圖
(圖片8 : 多個分支都有改動)

2、如上圖,Hi.java文件有改動,那我們就選中 *trunk*下的Hi.java文件(注意不是分支下的Hi.java),然后右擊選擇team->merge命令
(圖片9 : 開始merge)

3、選擇merge后彈出如下對話框,具體說明如下,
- 第一個紅框
- 上面部分選擇當前文件(項目)對應的分支上的文件(項目),可以通過后面的select按鈕選擇
- 下面部分選擇合並的起始版本,一般就是建立分支時的版本就ok,(具體哪個版本根據建立分支時填寫的備注即可得知)
- 第二個紅框默認選中,可以不用管
- 第三個紅框,就是選擇分支上的穩定的版本
- 如果確定最后的版本是穩定的,就勾選【Merge to HEAD revision】
- 如果最后的版本不是穩定的,那可以選擇之前某個穩定的版本即可,可以通過后面的select按鈕選擇
確認之后點擊"Merge",然后開始執行合並操作。
(圖片10 : 選擇分支以及分支的開始和結束版本)

4、合並完成之后,本地trunk下的文件將會被更新, 注意這里只是合並到本地,還需要你再檢查一下合並后的文件是否正確,再次確認后需要使用Team->commit 來提交合並后的內容。
5、建議合並后,再在trunk下對修改過的內容進行測試,最好一個點一個點的進行測試,保證合並后的內容是穩定無誤的。
5,標注新版本
(圖片6 : 新版本的路徑)

6,參考資料
Alpha:是內部測試版,一般不向外部發布,會有很多Bug.一般只有測試人員使用。
Beta:也是測試版,這個階段的版本會一直加入新的功能。在Alpha版之后推出。
RC:(Release Candidate) 顧名思義么 ! 用在軟件上就是候選版本。系統平台上就是發行候選版本。RC版不會再加入新的功能了,主要着重於除錯。
GA :General Availability,正式發布的版本,在國外都是用GA 來說明release版本的。
RTM:(Release to Manufacture)是給工廠大量壓片的版本,內容跟正式版是一樣的,不過RTM版也有出限制、評估版的。但是和正式版本的主要程序代碼都是一樣的。
OEM:是給計算機廠商隨着計算機販賣的,也就是隨機版。只能隨機器出貨,不能零售。只能全新安裝,不能從舊有操作系統升級。包裝不像零售版精美,通常只有一面CD和說明書(授權書)。
RVL:號稱是正式版,其實RVL根本不是版本的名稱。它是中文版/英文版文檔破解出來的。
EVAL:而流通在網絡上的EVAL版,與“評估版”類似,功能上和零售版沒有區別。
RTL:Retail(零售版)是真正的正式版,正式上架零售版。在安裝盤的i386文件夾里有一個eula.txt,最后有一行EULAID,就是你的 版本。比如簡體中文正式版是EULAID:WX.4_PRO_RTL_CN,繁體中文正式版是WX.4_PRO_RTL_TW。其中:如果是WX.開頭是 正式版,WB.開頭是測試版。_PRE,代表家庭版;_PRO,代表專業版。
α、β、λ常用來表示軟件測試 過 程中的三個階段,α是第一階段,一般只供內部測試使用;β是第二個階段,已經消除了軟件中大部分的不完善之處,但仍有可能還存在缺陷和漏洞,一般只提供給 特定的用戶群來測試使用;λ是第三個階段,此時產品已經相當成熟,只需在個別地方再做進一步的優化處理即可上市發行。




