2009-11-11 54 views
6

我已經在桌面PC上使用了Tortoise SVN(和VisualSVN)和本地存儲庫幾個月。我們剛剛建立了一臺Linux SVN服務器,並且我想將我的存儲庫移到這臺服務器上,保存我的所有歷史記錄。一旦移動,我將停止使用本地存儲庫。如何將我的本地Tortoise SVN存儲庫移動到我們新的Linux SVN服務器上?

烏龜文檔建議使用「Relocate ...」命令,但是這會抱怨不匹配的UUID。我發現了一些關於如何編輯UUID文件以使其與服務器匹配的建議,但即使在重啓後,Tortoise也忽略了新值。

此外,我目前沒有Linux服務器的命令行訪問權限,但如果必須的話,可能會得到它。

這樣做的最好方法是什麼?

回答

9

您需要svnadmin dump本地資源庫,獲取轉儲文件到Linux機器,和svnadmin load它。

Relocate在上述操作完成後,將用於您的工作副本。

Here's the documentation.

+0

svnadmin轉儲工作正常 - 謝謝!但是,Relocate仍然抱怨UUID不匹配。此外,VisualSVN堅持引用舊的本地存儲庫。經過一段時間後,我重新命名了所有的工作副本,然後將新的檢出項目更新爲新的工作目錄。當我確認所有東西都已建成並運行良好時,我刪除了舊的工作副本。 – 2009-11-12 22:51:57

2

如果使用FSFS版本庫的後端(這是標準的,因爲SVN 1.3),你只需文件複製整個資料庫目錄(例如,通過SCP)到Linux服務器。然後重新部署應該沒有問題,因爲它實際上是同一個存儲庫。

的FSFS回購格式是平臺兼容(請檢查Linux的SVN版本比你的VisualSVN版本相同或更高)

我這樣做很多時候,它真正的工作(當然是更好的制止犯複製回購)

1

之前,我剛剛試過以下(以強烈的絕望的響應):

的資料庫中與TortoiseSNV並沒有SVN的另一端(僅一個共享的資源運行)創建的。所以,我安裝了新的SVN服務器,並利用其二進制運行

C:\csvn> svnrdump dump file://server_ip/shared_resource/project > projectDump.svndump 

哪裏SERVER_IP是創建庫的服務器的IP地址。它的工作!只需要共享文件夾的權限(在我的情況下,我有Active Directory中的用戶登錄舊的存儲庫服務器和新的)。

只是猜測這個信息可以幫助像我這樣的人正在嚴重遷移糟糕的設置。

相關問題