SVN 分支與合併(branch、merge)

假設一個項目倉庫地址 http://svn.example.com/repos/calc
calc 項目有一個標準目錄

trunk/
branches/
tags/

分支(branch)

創建分支

svn copy 命令

$ svn copy http://svn.example.com/repos/calc/trunk \
           http://svn.example.com/repos/calc/branches/my-calc-branch \
           -m "Creating a branch of /calc/trunk."

Committed revision 341.
$

可以使用插入符號 ^ 省略完整路徑,進入工作副本,即 calc 副本目錄,不一定是根目錄,只要在副本里面,則上面的路徑可簡化爲

$ svn copy ^/trunk ^/branches/my-calc-branch -m "Creating a branch of /calc/trunk."

在 windows 中,^ 需要轉義,使用雙引號或 ^^
^^/trunk"^/trunk"

執行完 svn copy 後也會自動 commit 一次,此時工作副本不會產生分支,需要進行 update 操作。

合併

svn merge 命令

合併前最好 update 一下。
從主幹合併到分支,假設處於分支副本,則

$ pwd
/home/user/my-calc-branch

$ svn merge ^/calc/trunk

從分支合併到主幹,類似

$ pwd
/home/user/trunk

$ svn merge ^/branches/my-calc-branch

合並可以指定合併的版本範圍,如 $ svn merge ^/trunk -r399:HEAD 合併 r399 至最新版本範圍的變動。

想知道更詳細的信息不要忘記 svn help

官方文檔

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