本文只研究了 在本地如何進行主干,分支的相互合並 的操作:從主干到分支,從分支到主干。
本地客戶端工具是tortoisesvn
測試用例。
1.本地添加test文件夾
在test文件夾下分別建立trunk,branches兩個文件夾,建立好以后,提交到svn服務器端
此處的test文件夾的意義相當於一個單獨的工程項目,
trunk用來存儲主干代碼文件,branches用來存儲分支的代碼文件,

2.在trunk文件夾下建立 Project1文件夾
然后隨便新建一個txt文件,111.txt,里面寫上內容11111111111,然后提交到svn服務器端。
此處project1,相當於工程test的主干源代碼
3.新建分支
從trunk主干建立分支到branches, 第一次從主干創建分支的原理,就是把主干的代碼復制一份 到分支文件夾。
在trunk下,對project1文件夾,右鍵菜單,-- branches/Tag
彈出面板,對To Path文件路徑進行修改,指定到branches文件夾中,點擊確定就可以。
合並成功以后。分支目前只是建立在svn的服務器端,本地還沒有更新,對branches文件夾右鍵菜單 Update,就可以更新到分支代碼
4.合並分支 到主干
對分支下的project1文件夾下的內容,進行修改,然后把分支的修改合並到主干,
對分支下的111.txt,隨便輸入新的內容,然后再新建一個222.txt文件夾,隨便輸入內容。
然后commit到svn服務器端
如果合並成功,那么branches下的project1的內容會全部合並到trunk文件夾下的project1中。
回到trunk文件夾中,對project1右鍵菜單,merge
在merge type中,選擇第二個,第二個類型的功能更全面,可以合並任意兩個分支
選擇From版本, To版本
表示從trunk下的project1代碼版本, 到branches下project1的版本的變化,都要更新到本地工作副本,trunk,project1中
然后next 一直到執行。執行完畢后,會發現trunk下,會多了222.txt,而且因為分支中111.txt會合並到主干111.txt內容,如果有沖突解決一下就行。然后commit
5.合並主干到分支。
這個場景是,如果主干做了很多更新,可能需要及時更新到分支上去。
在主干中建立新文件333.txt,隨便輸入內容,然后commit
回到branches文件夾中,對project1,右鍵菜單,merge,仍然選擇第2個選項
一直到選擇版本這個地方
注意其中From,To的版本路徑,正好和從分支到主干是相反的。
執行完畢后,就會發現branches的project1多了333.txt文件,這樣就完成了主干到分支的合並
//////////////////////////////////
另外一個值得參考的好文章
http://www.docin.com/p-542804194.html?qq-pf-to=pcqq.discussion
