2012-10-14 60 views
3

我想用一些非標準結構在Subversion存儲庫中創建新分支:而不是repo/trunkorg/trunk/repo。該訪問只能使用HTTPS協議。使用HTTPS創建分支時出現svn「路徑未找到」錯誤

我試圖在半標準的方式去創建一個分支(注:下面的命令刪節位)

$ svn copy \ 
    https://svn.example.org/svnroot/ph/org/trunk/repo \ 
    https://svn.example.org/svnroot/ph/org/branches/foo/repo \ 
    -m "Create a 'foo' branch of /trunk/repo" 

此命令導致了奇怪的「路徑未找到」錯誤:

svn: '/svnroot/ph/org/!svn/bc/71/branches/foo' path not found 

我不認爲這是權限的問題,如下面的命令

$ svn copy \ 
    https://svn.example.org/svnroot/ph/org/trunk/repo \ 
    https://svn.example.org/svnroot/ph/org/branches/foo_repo \ 
    -m "Create a 'foo' branch of /trunk/repo" 

成功

Committed revision 72. 

可能是什麼這個問題的原因是什麼?我該如何解決它?


Subversion服務器是在版本1.6.19(r1383947),顛覆客戶端是1.6.17(r1128011)。

回答

15

默認情況下,您無法即時創建中間目錄。有- 父母切換到做到這一點。所以正確的命令應該是:

svn copy --parents \ 
https://svn.example.org/svnroot/ph/org/trunk/repo \ 
https://svn.example.org/svnroot/ph/org/branches/foo/repo \ 
-m "Create a 'foo' branch of /trunk/repo" 
1

當您首次創建存儲庫時,您運行「svn mkdir branches」來創建分支文件夾。按理說,你需要運行一個mkdir命令來製作foo,然後才能創建一個分支到那個(當前)不存在的文件夾。你嘗試過嗎?

1

使工作副本中的目標目錄'添加'他們,提交,然後做svn副本。爲我工作。