我有一個svn存儲庫,指定了EOL,並且各種項目正在通過svnrdump轉儲和svnadmin加載到新存儲庫。爲了討論的目的,基本拓撲結構是:將SVN工作區指向具有不同父目錄的不同服務器和存儲庫
old repo: http://oldrepo/repositories/oldname/...
new repo: http://newrepo/repositories/newname/...
這種特殊的倉庫很大,我有一個開發者希望自己的老工作空間指向新的存儲庫。我看到的問題是TortoiseSVN允許重新定位事件,並且通過輸入URL http://newrepo/repositories/newname
,初始重定位似乎成功。但是,工作區現在認爲在新的回購目錄結構是這樣的:
http://newrepo/repositories/newname/oldname
有沒有一種方法,以消除工作區的參考OLDNAME?由於額外的非目標目錄,SVN更新失敗。我能想到的唯一選擇是讓該開發人員從新存儲庫中檢出全部所需的工作空間,並讓他將他的WIP文件複製到新的工作空間中。客戶端是否有其他選擇或解決方案?
編輯:工作目錄是c:\ SVN \ FolderA。執行命令:svn relocate http://newrepo/repositories/newname/Folder1/FolderA
返回以下錯誤:
svn: E155024: Invalid relocation destination: 'http://newrepo/repositories/newname/Folder1/FolderA' (does not point to target)
我不知道有關這是怎樣的,但原來的倉庫位置oldrepo是一個文件夾,但在新的存儲庫,newrepo(即:http://newrepo/repositories/newname
)是新存儲庫的根級別。另外,我應該指出,在遷移過程中,變更被保留,但個別版本號不是。
您的開發人員可能不得不將其項目與舊工作區斷開連接,刪除其項目並將其項目從新工作區導出。 –
我指示他這樣做。我的感覺是,由於目錄結構已從舊版本更改爲新版本庫,因此將舊的工作區指向新版本庫沒有乾淨的方法。 – OrionRogue
@GilbertLeBlanc,如果你想把你的評論作爲一個正式的答案,這就是我所接受的。 – OrionRogue