2012-07-16 47 views
0

大家好,我希望你有一個美好的一天!SVN缺少修訂 - 有沒有人有解決方案

我有一個小問題,我找了一個解決方案無濟於事。也許這裏有人可以幫助我?問題是這樣的:

我正在使用我編寫的腳本,它循環遍歷所有文件夾並對網絡位置執行repos的hotcopy。所有的作品真的很好,除了一個回購,其中失敗,出現以下錯誤:

svnadmin:無法打開文件'E:\ repositories \ 20100831_repository_xyz \ db \ revs \ 0 \ 235':系統找不到指定文件。
無法備份存儲庫。 < ==錯誤分段完成==!>

我不介意丟失修訂,但我顯然不能導出和導入(丟失所有修訂版)。另外,我真的需要修復它,因爲它打破了我每晚的備份!在4周內使用500gb ...

任何人都有工作解決方案?

+0

轉儲是毫無價值的大回購..這是不可能在合理時間內傾倒。我做類似的熱副本,並保持svnsync鏡像。雖然svnsync決定跳過特定文件的幾個轉換,但我確實遇到了新問題。我們切換到鏡像,但第一次提交該文件現已造成基線不匹配。我相信它得是與有這個問題svnsync的..任何人經歷一個錯誤?我正在嘗試修復缺失的轉速。我發佈我的修復程序.. – 2013-05-18 15:10:48

回答

2

首先,你最好使用svnadmin dump,因爲這將包中的每個回購與 其元數據 - 修訂chagnes,用戶等你‘下來和骯髒’的方法是有風險的,因爲有在通過網絡傳輸時丟失一些文件的可能性。然後,您可以通過Intranet,Internet或其他任何方式安全地傳輸所有的回購,並將它們加載到另一個SVN實例中,或只保留這些文件。

這是怎樣的命令作品:

svnadmin dump REPOSITORY_NAME > out_file.dump 

我用的是掃描我的svn_root目錄中ls -1一個cronjob,這就是一切的根源回購迪爾斯是,所有目錄(除./和。 ./)獲取它們的名稱並在它們中的每一個上執行存儲庫轉儲。之後,我安全地通過SSH將文件移動到另一臺服務器。

而另一件事 - 如果你想有一個正在工作(作爲從屬/鏡像)和最新的,您可以使用庫鉤子將其與主機同步的另一臺服務器。如果您希望我解釋這一點,請對此發表評論。這並不難。

相關問題