从Origo导入svn存储库

时间:2012-03-19 19:24:47

标签: svn import export dump svnadmin

Origo正在关闭他们的SVN托管,所以我再次被迫转移到另一个SVN托管服务。问题是,他们确实为我们提供了一个存储库“夜间转储”的URL。

但事实上,这不是Subversion 便携式转储文件。我得到的是整个文件系统存储库的280Mb“tar.gz”备份。

因此,在尝试“导入”或管理该备份时,我遇到了一些问题。

  1. 它是使用我不了解的任何版本的svnadmin创建的
  2. 它是在linux上创建的(似乎),我正在使用Windows
  3. 由于我打算回到Assembla进行SVN托管,我需要一个有效的可移植转储文件进行导入。这是我被困的地方:

    • 我无法执行svnadmin load,因为我首先没有获得有效的转储文件。
    • 我尝试将备份文件解压缩/解压缩到文件夹,然后使用svnadmin dump创建自己的转储。但后来我收到一条可怕的消息:'vnadmin:E160033:未知的FS类型'fsfs
      • 请注意奇怪的消息:s已被'
      • 取代
      • 如果你仔细观察,你会发现这是用%s = fsfs \ cr打印未知FS类型'%s'的结果......
      • 因此,确实 CR + LF 该备份问题。我通过将新的svnadmin create testrepo与我的Origo存储库进行比较来确认。

    我在这里发帖提出一个问题,希望我能找到一种方法来处理从linux svn存储库到windows svn存储库的转换。

    我已经看到了这两个混乱中的两个选项,我将试图避免

    选项1 :使用linux PC。这意味着:

    1. 找一台linux PC
    2. 解压缩/解压缩
    3. 安装svn。
    4. 使用svnadmin创建一个可移植转储(希望我最终使用的svnadmin仍然与我首先获得的repo兼容)。
    5. 选项2 :使用svnsync

      1. 安装svn,包括svnsync
      2. 在原始存储库中使用它来同步和创建镜像存储库
      3. 在该镜像存储库上使用svndump创建可移植转储
      4. 好吧,直到最初的回购仍在运行。
      5. SIDE注意:我多年来一直在保存这个日常备份文件,但是现在我正在尝试使用它并且我遇到了这个问题。这让我回想起进行恢复而不是备份

2 个答案:

答案 0 :(得分:1)

如果它真的备份了repo的FS树,你可以

  • 安装本地SVN
  • 从空存储库位置
  • 还原存档中的文件(目录?)
  • 如果一切正常(存储库可以访问并且可以恢复) - 创建转储,Assembla接口可以接受

答案 1 :(得分:0)

对于origo提取夜间转储后,在linux上使用 Subversion 1.6.5 来创建转储文件 - “svnadmin dump ...”。然后你可以使用“svnadmin load ..”到本地存储库或使用dump for assembla。