SVN 分支与主干的合并
SVN簡單介紹
branches:分支, 僅限開發(fā), 合并使用. 通常是以項目名字命名子目錄.
trunk:主干,一般來說就是開發(fā)的主要呆的地方,
tags:??目錄一般是只讀的,這里存儲階段性的發(fā)布版本,只是作為一個里程碑的版本進行存檔、
分支的作用:如下圖
分支合并主干
1、首先分支要更新到最新版本
2、將主干(trunk)Check out 到本地(merge是合并在開發(fā)者本地)
在本機隨意一個目錄新建一個空目錄,比如在d盤新建了一個master的目錄,然后右鍵=>SVN Check out,將trunk的svn地址復(fù)制到“URL of repository”那一欄,然后點擊“OK”
3、選中創(chuàng)建的master目錄,然后右鍵=> TortoiseSVN? => 選擇merge,這時會彈出一個Merge type讓你選(TortoiseSVN1.9.5這個版本只有兩個選項,網(wǎng)上有些博文有三個選項)
Merge a range of revisions:合并一個范圍的版本
?
此類型應(yīng)用最為廣泛,主要是把分支中的修改合并到主干上來。在主干上點擊右鍵選擇合并,然后選擇合并類型:合并一個范圍的版本
合并的源URL填寫的是要合并的分支的URL,待合并的版本范圍如果為空,則指的是合并分支上所有的版本,即自從分支創(chuàng)建以來到分
支當前最新版本的所有演變。如果只是選擇其中一個版本,或者幾個版本,那么就表示只是將制定的n個版本的變化合并到主干上。如果
只是選擇其中一個版本,那么表示只是選擇那個版本的修改,之前或之后的修改將不被采納。
4、上步選擇了Merge a range of revisions 之后,點擊“Next”,進入如下界面,這時我們就可以看到如下界面
要合并的路徑:分支合并主干時選擇分支路徑、主干合并分支時選擇主干路徑
選擇版本號:可以選擇所有版本進行合并、或者選擇指定的某一版本進行合并,比如最新提交的版本(點擊 show log 會出先之前版本號)
5、上步選擇完成之后,點擊“Next”,進入如下界面,這時我們就可以看到如下界面
全部使用默認的選項,然后在點擊Merge之前,可以先點擊Test merge按鈕,測試一下merge之后的效果
如上圖所示,這樣就完成了分支合并到主干的操作。
?
=======================================================================================
?
如果選擇的是?Merge two different trees?
Merge two different trees:合并兩個不同的樹
此類型與前兩種類型不同,第一種類型可以選擇分支合并的版本,主干不能選擇版本;第二種類型是主干和分支都不能選擇合并的版本;
而這種類型則是無論是主干還是分支都可以選擇合并的版本,即可以選擇過去的一個主干版本與分支的某個版本進行合并。合并的時候
以選擇的分支版本為主,如果選擇的主干版本與分支版本有不同的地方,合并時主干部分將被放棄。
起始URL:選擇主干目錄的URL(應(yīng)當和當前工作副本的URL一致,這個是所謂的合并點)
結(jié)束URL:選擇要合并的分支的URL。
起始和結(jié)束的版本:一般起始版本應(yīng)當找到最后一次同步時的版本,如果從沒有同步過(第一次合并),則選擇創(chuàng)建分支時的版本,結(jié)束版本一般是最新版本,如果你不想將某些內(nèi)容合并進主干的話,也可以選擇一個合并點。
上步之后,點擊Next,進入下面這個頁面,同樣,在最終merge之時,點擊Test merge
點擊Test merge之后,可以看到最終合并之后的效果
?
主干(trunk)中的代碼合并到分支(branch)
這邊的操作和分支(branch)合并到主干(類似),需要注意的是,Merge type如果選擇“Merge a range of revisions”,那么范圍的起始版本應(yīng)該為拉取分支時的主干版本,
結(jié)束版本應(yīng)該為trunk最新的版本;如果選擇“Merge two different trees”,那么From必須是選取拉取分支時的主干的版本,或者分支的第一個版本,To必須是主干最新的版本
最后總結(jié)一下:不管選取哪個Merge type,都能完成主干到分支、分支到主干的合并,需要注意的是,在選擇“Merge two fifferent trees”時From和To對應(yīng)的URL所代表的含義
參考鏈接:https://www.cnblogs.com/xdouby/p/7237005.html
?
總結(jié)
以上是生活随笔為你收集整理的SVN 分支与主干的合并的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ARM版本系列及家族成员梳理
- 下一篇: 【JDK1.8】Java HashMap