2010-12-21 67 views
0

我的SVN服務器已經死機。服務器死機時移動一個SVN倉庫

我有另一臺機器可以用作SVN服務器和一些機器的工作副本的原始存儲庫。

是否有一種乾淨的方式來重新創建一個新的服務器上的存儲庫,從目前的工作副本? (可以忘記歷史記錄)

我試圖創建一個新的存儲庫,竊取它的UUID並檢查完整的目錄結構,然後切換工作副本,但這不起作用,因爲校驗和和修訂數字不匹配。

任何幫助將非常感謝!

+1

磁盤被破壞,還是可以將它安裝在另一臺機器上並複製存儲庫目錄? – Anon 2010-12-21 16:18:37

+1

如果你不關心歷史,爲什麼要關心保存你的工作副本?只需將你有的東西導入一個全新的回購,然後簽出一份新的工作副本。 ??? – 2010-12-21 17:13:10

+0

匿名 - 磁盤仍然存在,但我沒有其他臺式機可用。我可能不得不挖掘一個IDE/USB適配器... Nathan-我想我可以做到這一點;我希望我能夠在某個時候重新啓用歷史記錄機器,以便我可以獲得歷史記錄... – Rick 2010-12-21 21:42:52

回答

1

你沒有備份任何東西?

如果是這樣,那麼最簡單的方法是創建一個新的存儲庫,將一個工作目錄的內容導入到其中,然後讓其他人從新的存儲庫中檢出乾淨。試圖破解現有的工作目錄會比它的價值更麻煩。

您需要確保「master」工作目錄是乾淨的:對其執行svn revert,然後刪除所有.svn目錄 - 請注意,樹的每個級別都有一個目錄這樣做)。

如果要保留其他工作目錄中的更改,則可以從中刪除.svn目錄,並使用類似cpio這樣的工具將文件複製到新的工作目錄中。

2

如果您願意放棄歷史,您可以創建一個新的存儲庫並將您的工作副本添加爲新內容。但是,爲了做到這一點,您需要先刪除所有.svn文件夾。一些腳本可以做到這一點。

一定要用你的工作副本做所有這些,因爲它似乎是你必須堅持的最後一件事。

+0

有沒有什麼方法可以保存歷史記錄,並將庫導入新創建的回購庫。 – Krunal 2014-07-03 10:35:08

2

svn export是刪除.svn文件夾的正確方法。