SVN分支管理最佳策略
SVN分支管理最佳策略
[ 2014-08-29 20:41 | 瀏覽次數(shù):?1,817次?| 0條評論?]現(xiàn)在網(wǎng)上git的分支管理最佳策略最好查找, 基本上都趨同于一個(gè).
由nvie建議的git branching model.
地址:?http://nvie.com/posts/a-successful-git-branching-model/
Nvie畫的這張圖基本上把策略顯示出來了.
稍微介紹一下分支:
Master: 主分支(分支名字:”master”)。所有提供給用戶使用的正式版本,都在這個(gè)主分支上發(fā)布。且每個(gè)版本都會(huì)打一個(gè)tag( tag名字例: “0.1”,”0.2”,”EMC-0.1”,… )
Develop: 開發(fā)分支(分支名字:”develop”),所有最新的代碼都應(yīng)該在這里.
Feature branch:功能分支(分支名字例:”myfeature”,”log”,”view_version”,…), 用于開發(fā)某個(gè)功能,比如添加log或者查看版本信息等功能,某個(gè)功能開發(fā)完畢后把代碼合并回develop分支并且刪除此功能分支. 此分支一般只創(chuàng)建在本地,不用同步到服務(wù)器. 不過如果你的代碼只要幾天就完成,一般沒必要另起一個(gè)分支,直接在develop分支上修改,改完后提交就可以了.
Release branches: 預(yù)發(fā)布分支(分支名字例: “release-0.1”, “release-0.2”,”EMC-release-0.1”,…), 用于在發(fā)布正式版本之前,可能需要有一個(gè)預(yù)發(fā)布的版本進(jìn)行測試。在測試中發(fā)現(xiàn)的bug全部修正在此分支.修正完畢后將代碼merge到develop和master分支,然后可以刪除此分支.
Hotfix branches: 修補(bǔ)bug分支(分支名字例:”hotfix-1.2.1”,”hotfix-1.3.1”,”EMC-hotfix-1.4.1”, 其中的版本號為下個(gè)發(fā)布版本的版本號), 用于在正式發(fā)布版本上發(fā)現(xiàn)了bug,需要修復(fù)在小版本號上,這時(shí)可以從mast分支中拉出一條分支來修正bug,修正完畢后將修改merge回master和develop,然后刪除此分支.
雖然目前git很火,但是SVN還是有很多優(yōu)點(diǎn),完全適用于一些小團(tuán)隊(duì).
Git需要打很多命令,分支需要經(jīng)常換來換去,有時(shí)還忘了把代碼同步到服務(wù)器上,沒有一個(gè)全局版本號.
SVN基本上不需要打命令,所有的文件全都提交到服務(wù)器上,不會(huì)忘了提交,最好的一個(gè)特點(diǎn)就是全局版本號.
那SVN分支管理有什么最佳策略呢?
我給出我的建議:
?
其中
Trunk: 主開發(fā)分支,所有最新的代碼都在這里
Tags: 一個(gè)里程碑版本(名字:”1.0”,”1.1”,”2.1”,”EMC-1.0”,”EMC-1.1”,”O(jiān)EM-1.0”…),用于存放發(fā)布的版本
Bugfix branch: 修正bug的分支(名字:”bugfix-1.x”,” EMC-bugfix-1.x”, “OEM-bugfix-1.x”),一般從某個(gè)tag拉出來,用于解決這個(gè)大版本的所有bug
Customize function dev branch: 特殊需求的開發(fā)分支(名字:”O(jiān)EM-dev”,”Japan-dev”,…),用于為某個(gè)客戶的特殊需求開發(fā)一個(gè)版本,
總結(jié)
以上是生活随笔為你收集整理的SVN分支管理最佳策略的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL表更新记录
- 下一篇: 【机器学习】网格搜索、随机搜索和贝叶斯搜