1. 程式人生 > >SVN 分支主幹的合併

SVN 分支主幹的合併

一、主幹合併到分支

首先,在本地trunk中先update一下,有衝突的解決衝突,保證trunk和repository已經完全同步,然後在/branches /MyProject上右鍵,依次選擇”TortoiseSVN” -> “Merge…”,在彈出的視窗中選擇第一項”Merge a range of revision”,這個型別的Merge適用於將某個分支或主線上提交的多個revision間的變化合併到另外一個分支上。

這裡寫圖片描述

點選next後,出現如下視窗:

這裡寫圖片描述

由於是要從trunk合併到branch,理所當然這裡的”URL to merge from”應該填trunk的路徑,”Revision range to merge”很好理解,就是你要將trunk的哪些revision所對應的變化合併到branch中,可以是某一連串的 revision,比如 4-7,15-HEAD,也可以是某個單獨的revision號(可以點選Show log視窗後選擇)。當然我們也可以選擇 all revisions 表示所有修訂。點選next後出現下圖:

這裡寫圖片描述

在這裡只需保留預設設定即可。在點選Merge按鈕前你可以先Test merge一把,看成功與否,以及merge的詳細資訊。點選Merge按鈕後trunk所做的修改將同步到branch中。

至此,branch 已經完全和 trunk 同步,合併發生在本地 working copy,只要你不提交就不會影響到 repository。所以我們和合並操作後,處理好衝突(如果存在衝突)後,將程式碼提交到 repository。

二、分支合併到主幹

在/trunk/MyProject上右鍵(注意是在主線的目錄上右鍵),依次選擇”TortoiseSVN” -> “Merge…”。 
後續操作和 “分支合併到主幹” 一樣,其實你可以把主幹也理解為一個分支 “主分支”。 
因為我們把分支合併到分支一般是分支開發完畢後,所以在一般選擇 all revisions ,當然你如果只想合併一部分到主幹,一樣可以選擇 specific revisions 指定版本號合併。