Svn

轉儲/載入後 SVN 儲存庫縮小 3 倍

  • July 17, 2019

我在 RHL9 上執行的舊 svn 伺服器上有一個 repo。svn 版本是 1.1.4。儲存庫大小為 1.1GB ( du -sh $REPO),其完整轉儲為 1.7GB。我在 ubuntu 16.04、svn 版本 1.9.3 上執行的最近的 svn 伺服器上傳入了轉儲。我執行以下命令:

svnadmin load --bypass-prop-validation -q "/path/to/repo.svn" < "/path/to/repo.dump"

現在,repo 只有 412MB 大 ( du -sh)。

我只管理伺服器,我自己不使用svn。當我查看 Tortoise 上的 repo 日誌時,似乎所有修訂版和所有文件都在這裡(無法手動檢查所有內容,3733 revs)。

但我不知道如何檢查這種大小差異是否導致數據失去。

我怎麼知道 ?(來自 tortoise 或伺服器 cli,我是 root)這種大小差異對你來說是不是很糟糕?

SVN 在 SVN 1.4 之後(我認為)在減少儲存庫大小方面做了很多工作,因此您現在可以看到這些開發工作的捆綁結果(SVN 原始源)。

  1. 新儲存庫不包含舊的死轉換(在 SVN 1.1 中未刪除)
  2. 較舊的 SVN 儲存庫沒有以壓縮形式儲存文件的內容
  3. 修改的增量現在也以壓縮形式儲存,保存在以後的修訂文件中
  4. SVN 引入了表示共享,這意味著兩個相等的文件只儲存一次。這可以通過svnadmin pack命令進行優化(將 1000 revs 打包到一個文件中並刪除所有內容)

現代算法可以將冗長的文本壓縮到大約 15% 或更少。有關壓縮的更多數字和數據,請參見此處

引用自:https://serverfault.com/questions/960921