2015-12-07 47 views
0

我有以下的版本庫結構如何所有版本從主幹複製到分支逐一

A   repo1\trunk 
A   repo1\branches 
Adding   repo1\branches 
Adding   repo1\trunk 
Committed revision 1. 

A   repo1\trunk\sources 
Adding   repo1\trunk\sources 
Committed revision 2. 

A   repo1\trunk\sources\file1.txt 
Adding   repo1\trunk\sources\file1.txt 
Transmitting file data . 
Committed revision 3. 

A   repo1\trunk\sources\file2.txt 
Adding   repo1\trunk\sources\file2.txt 
Transmitting file data . 
Committed revision 4. 

是否有可能從主幹複製所有版本分支逐一?
事情是這樣的:

svn copy svn://localhost/repo1/[email protected] svn://localhost/repo1/branches/b1 -m "m1" 
svn copy svn://localhost/repo1/[email protected] svn://localhost/repo1/branches/b1 -m "m2" 
svn copy svn://localhost/repo1/[email protected] svn://localhost/repo1/branches/b1 -m "m3" 
etc 

或在這種情況下,修訂應一個合併一個?
因此,我需要所有的修改從主幹複製到分支B1 ABD有如下分支b1的結構:

b1/sources/file1.txt 
b1/sources/file2.txt 

回答

2

您不必每次修訂逐個複製。如果你只關心在sources子目錄兼具file1.txtfile2.txt,你只需要創建最新的主幹的一個分支,用它做:

svn cp svn://localhost/repo1/trunk svn://localhost/repo1/branches/b1 -m 'Create branch' 

如果由於某種原因 - 這是不是真的清楚對我來說 - 你真的需要通過修訂來修改版本,正確的策略是在某個版本中創建一個分支,例如

svn cp svn://localhost/repo1/[email protected] svn://localhost/repo1/branches/b1 -m 'Create branch' 

然後合併所有進一步修改,例如像這樣

svn co svn://localhost/repo1/branches/b1 
cd b1 
svn merge ^/trunk -c 2 
svn ci -m 'Merged revision 2' 
svn up 
svn merge ^/trunk -c 3 
svn ci -m 'Merged revision 3' 
svn up 
... 
相關問題