2011-04-07 104 views
5

我必須要svn存儲庫,可以說AB。我想將B的一些目錄和歷史一起添加到A中。可以這樣做。爲了更加清楚,以下是該場景。將SVN存儲庫的一部分合併到另一個有歷史記錄的存儲庫

repo A        repo B 
     \branches       \branches 
      \sub-branch1      \sub-branch B1 
       \sub-branch2      \sub-branch B2 
     \trunk        \trunk 

我想要做的是,在repo的分支機構中添加sub-branch2。怎麼辦?

在此先感謝

回答

6

獲取repoB的子BRANCH2的轉儲:

svnadmin dump /location/of/repoB | svndumpfilter include subbranch2 > my.dump 

合併轉儲到repoA的分支:

svnadmin load /location/of/repoA --parent-dir branches < my.dump 
+0

我試過但得到了disastor,可能是我做了一些錯誤。我以前的歷史都丟失了。父目錄是否僅指定到頂層目錄。我的存儲庫真正的架構比我在一個問題中提到的要深一層。如果我可以恢復這個過程,你能否建議我? – thetna 2011-04-07 11:02:26

+0

你是什麼意思回覆?只需從repoA中刪除你不需要的目錄 - 沒有對repoB進行更改。加載過程必須顯示一些消息,這將有助於您瞭解哪裏出了問題。 – vpk 2011-04-07 11:14:24

+0

**對於填充的空版本。**是我得到的錯誤,並且該目錄也沒有添加到指定的目錄中。您可以告訴我它是什麼原因? – thetna 2011-04-07 11:57:06

1

是的,這是可能的。您需要使用svnadmin dumpsvnadmin load
欲瞭解更多信息,請看這裏:http://blogs.nuxeo.com/dev/2006/04/dump-load-svn-repositories-using-svnadmin-svndumpfilter.html

+0

讀了這篇文章。這是非常有用的。但我有一個疑問,如何指導傾銷文件的位置。我認爲** svnadmin load

thetna 2011-04-07 10:42:00

+0

閱讀我對答案的回覆。您可以在svnadmin load命令中指定父目錄。 – vpk 2011-04-07 10:44:18

+1

對加載命令使用--parent-dir選項。以jjossarin的答案爲例。 – 2011-04-07 10:44:53

相關問題