1.0開發完畢,代碼凍結
基於已經凍結的trunk,爲release1.0打tag
此時的目錄結構爲
svn://proj/
+trunk/ (freeze)
+branches/
+tags/
+tag_release_1.0 (copy from trunk)
2.0開始開發,trunk此時爲2.0的開發版
發現1.0有bug,須要修改,基於1.0的tag作branch
此時的目錄結構爲
svn://proj/
+trunk/ ( dev 2.0 )
+branches/
+dev_1.0_bugfix (copy from tag/release_1.0)
+tags/
+release_1.0 (copy from trunk)
在1.0 bugfix branch進行1.0 bugfix開發,在trunk進行2.0開發
在1.0 bugfix 完成以後,基於dev_1.0_bugfix的branch作release等
根據須要選擇性的把dev_1.0_bugfix這個分支merge回trunk(何時進行這步操做,要根據具體狀況)
這是一種很標準的開發模式,不少的公司都是採用這種模式進行開發的。trunk永遠是開發的主要目錄。svn