在SVN里面我們一般會創建出三個文件夾
Trunk(主干) Branch(分支) TAG
在我們項目一開始的時候我們會將代碼文件 (這邊暫時不涉及文檔的管理)放在Trunk底下。然后我們就不斷的開始工作了。
什么時候我們會用到Branch。
按我的經驗的話我們用到Branch有兩種情況
- 項目穩定了要relase了 整個業務流程和功能都是完成的。(基本看不到bug只有一些隱藏的很差的bug可能還存在,比如一些數值算錯)。這個時候我們就可以把這個Relase的版本放到Branch哪邊,然后我們繼續在trunk開發新的功能需求。 relase哪邊只能是等待一些很小的bug。 (測試和開發做得好的話。無限趨近0零)。
- 項目開發過程中,突然有一個大的需求過來。跟其它的需求沒有太大的關系。並且客戶想看一下這個功能做出來是否用得還可以。哪么我們就可以從trunk這邊弄出一個branch然后,某個人或幾個人就工作在這個branche上面。客戶測試過后對這個Branche滿意之后。(也是大部分沒有bug)。然后合並到trunk.
如果branch的創建沒有按這種方式來搞的話。你會發現到時候合並起來的壓力是超級大的。合並的時候會漏掉一些代碼,沖突N多。合並的人痛苦。團隊的其他成員也痛苦。
TAG 我自己基本沒有什么用到。按大部分人的說話是這樣的。
一個Relase發布之后。經過一小段時間的修改。發現都沒有bug了。然后我們把這個Relase可以弄一個分支到Tag哪邊。實際我覺得這個意義不是很大。