2013-02-17 29 views
2

我的開發項目使用VisualSVN Server v 1.1來管理我的Tortoise SVN存儲庫。託管它們的Windows服務器變得不可用,我不得不使用ISP的恢復應用程序將源數據下載到另一臺服務器。我採取了以下步驟。當託管它的Windows服務器不再可用時,如何移動SVN存儲庫

  1. 從舊服務器複製文件夾存儲庫和svnrepos到新的。

  2. 我在新服務器上安裝了Visual SVN。安裝時,我告訴應用程序有關存儲庫文件夾,希望能夠神奇地知道發生了什麼(有趣的事情關於魔法,因爲我們都知道它不存在)。

  3. 我更新了子域的DNS以指向新服務器的IP。

  4. 現在,當我打開visual svn時,我確實看到了foldes,用戶和組(這裏有點魔力)。但不幸的是所有存儲庫打開時顯示錯誤「預期FS格式‘2’;發現格式‘3’」

所以現在的問題是,我該如何解決,而不破壞的文件和文件夾的爛攤子?

回答

1

聽起來像format of the repository是不同的這個版本的服務器預計。 Subversion基本上有兩種不同的內部表示形式--DBB(現在不推薦使用)和FSFS(現在已經是現在倉庫的默認設置)。我懷疑舊服務器上使用BDB的版本和你現在使用的服務器無法應付這種情況。

我建議最好的行動方案是首先嚐試儘可能接近地複製舊的服務器。你提到VisualSVN服務器v1.1 - 這是你最初的或者你現在使用的?嘗試安裝您在舊服務器上運行的相同版本的VisualSVN。如果無法讀取存儲庫格式,那麼可能需要安裝一個額外的插件。如果原始服務器是一個不同的操作系統,然後建立一個具有該操作系統的機器(如果它是一個Linux服務器,然後嘗試使用Linux安裝磁盤創建一個虛擬機)。

一旦獲得了可以識別數據格式的服務器實例,請執行一個svnadmin dump,它將以便攜式格式創建SVN數據的備份。然後,您可以將服務器更新到最新版本的SVN,或者轉移到將成爲實際服務器的機器上(例如,如果您必須使用虛擬機來獲取數據)。然後您可以使用svnadmin load導入備份。

請注意,如果您設置了任何掛鉤(例如,預提交掛鉤),那麼這些掛鉤不會保存在svnadmin dump中,因此您需要手動複製這些掛鉤。配置文件和權限數據也一樣。

相關問題