svn merge操作

一、目的

簡單記錄svn的merge操作,特別是merge時的from,to很容易根據字面意思弄錯。 

二、操作

1.  本地創建Testing目錄,裏面自動包含三個文件夾branches,tags, trunk.

2.  trunk目錄下創建examples1目錄,裏面添加文件hello.c,之後commit到server.

3.  創建分支到branches/examples1。

1.      在trunk的examples1目錄,選擇Branck/tag,創建分支。


2.      路徑選擇branches/examples,並添加註釋,之後點擊OK。點確定後,svn服務器上已經將trunk的examples1copy到branches/examples1了,但是沒有自動同步到本地。需要本地update目錄才能下載分支。

.

3.      update本地Testing目錄後,代碼下載到本地。

4.  修改branch/examples1下的內容(修改hello.c,添加hello.h),並commit到服務器。

 

5.  將branch下的exmples1合併到trunk的examples1.

a.      在trunk下的examples1目錄選擇merge功能。


b.      選擇differenttree


c.      在From中選擇trunk的路徑,在to中選擇branches路徑。在merge時,前後版本會先比較內容,再將差異部分copy到本地。From是左邊,類似於原始版本,to是右邊,類似於修改後的程序。


d.      merge之後,branches的內容已經更新到trunk目錄,之後通過commit,將內容放到服務器。

6.  修改trunk/examples1的內容,並commit到服務器

7.  Trunk Merge到Branches

a.      在Branches/examples1目錄,右鍵選擇Merge功能。之後仍然選擇differenttree。


b.      之後選擇路徑,from選擇branches,to選擇trunk。


c.      點OK後,trunk的內容就合併到了branches。之後commit到服務器就Ok。


三、總結

1.      如果merge時出現衝突,需要小心處理。

2.      在使用merge功能時,一定要在合併目的地選擇merge功能,而不是在數據源處選擇merge。

3.      裏面的from和to很容易被字面意思搞混,容易理解成“從。。到。。”。其實可以理解爲,from爲左邊,起始狀態,to爲右邊,最終狀態。他們之間會做diff比較,之後將to的內容更新到from。

4.      svn操作記錄從版本25-29.


發佈了89 篇原創文章 · 獲贊 13 · 訪問量 6萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章