A.svn merge sourceURL1[@N] sourceURL2[@M] [WCPATH] B.svn merge sourceWCPATH1@N sourceWCPATH2@M [WCPATH] C.svn merge[[-c M]...|[-r N:M]...] [SOURCE[@REV][WCPATH]] 最常用的是第三種,即把當前一個階段內的版本都合并到WCPATH的位置。其中-c M相當于-r M-1 M。下面我們來看如何應用這個命令來集成主干的改變 Step 1:確定要從哪個版本開始~那個版本結束 通常從主干到分支彼此之間的集成不會太頻繁,不要指望能夠一天一次或幾天一次。通常都是在主干的代碼開發完畢,測試通過后才會更新到分支。在此期間可以主干上的開發人員已經進行了多次的提交,為了令到這一時間段內的變化都能夠被分支感知,我們會把這一階段內的所有變化都集成到分支上。 所以集成前的第一步就是使用svn log查看要從哪個版本開始集成。
我們告訴SVN,把從版本號38開始到41之間的所有改變都集成到本地工作副本ECoupon_tmp項目中,于是從版本號39開始~41的所有變化都會被應用到本地工作副本。 Step 3: 提交集成結果 由于svn merge命令的最終應用時WCPATH,也就是說你只能把來自主干的改變同步到分支的本地副本。此時你本地的副本已經時最新的了,但版本庫上的分支還不是。所以還得執行一次commit