【问题标题】:How can I downgrade the format of a Subversion repositiory?如何降级 Subversion 存储库的格式?
【发布时间】:2019-02-08 03:34:39
【问题描述】:

有什么方法可以降低 Subversion 存储库的格式以避免出现这样的消息:

svn:存储库的预期格式“3”;找到格式“5”

当您从多台机器访问存储库并且您无法在所有这些机器上使用一致版本的 Subversion 时,就会发生这种情况。

更糟糕的是,在不同的服务器上有多个不同格式的存储库,我无权升级其中的一些服务器。 ~~~

【问题讨论】:

  • 导入/重新导入存储库并不总是一个好主意,我建议不要这样做。 (过去我在使用 Subversion 时遇到过问题)

标签: svn


【解决方案1】:

如果您不能在所有机器上使用相同版本的 Subversion,那么您应该设置一个服务器进程(svnserve 或 Apache)并仅通过服务器访问存储库。服务器可以在不同版本的 Subversion 之间进行调解;只有当您使用直接存储库访问时才会遇到此问题。

如果服务器将是比当前存储库格式更旧的版本(我不推荐),那么您需要使用较新版本导出存储库并使用旧版本导入。

【讨论】:

    【解决方案2】:

    svnbook 说this(关于文件:/// 访问与设置服务器)

    不要不要被简单的想法所诱惑 让您的所有用户访问 直接通过文件:// URL 存储库。 即使存储库很容易 通过网络向所有人提供 分享,这是个坏主意。它删除 之间的任何保护层 用户和存储库:用户可以 意外(或故意) 损坏存储库数据库,它 变得难以获取存储库 离线进行检查或升级,以及 它可能导致文件混乱 权限问题(请参阅the section called “Supporting Multiple Repository Access Methods”)。请注意,这是 也是我们警告的原因之一 反对通过访问存储库 svn+ssh:// URL——来自安全 立场,实际上是一样的 作为通过 file:// 访问的本地用户, 它可以包含所有相同的 如果管理员不是问题 小心。

    Subversion 保证任何 1.X 客户端都可以与任何 1.X 服务器通信。通过使用服务器,您可以一次升级服务器,客户端独立于服务器。

    【讨论】:

      【解决方案3】:

      我怀疑您必须导出存储库并将其重新导入旧版本。虽然导出格式中可能存在一些格式不兼容 - 但由于它只是一个大文本文件,因此希望将其删除不会太困难。

      【讨论】:

        【解决方案4】:

        根据 Subversion 书,没有办法做到这一点。您必须导出整个存储库,然后在启动并运行旧版本时继续重新导入它。

        无论如何,我建议您在客户端机器上相应地升级您的 SVN 工具,而不是在您的存储库中玩危险的游戏。

        确定一个版本,在您准备好升级到新版本之前不要碰它。

        【讨论】:

        • 根据我办公室的经验,这似乎是答案。正如马丁所说,你真的不能。
        【解决方案5】:

        正如该线程How to downgrade a subversion tree from v1.7 to v1.6? 中提到的,http://svn.apache.org/repos/asf/subversion/trunk/tools/client-side/change-svn-wc-format.py 上有一个 python 脚本可以降级工作副本,但它最多只能用于 1.6x 版本。

        【讨论】:

          【解决方案6】:

          如果您降级到 v1.4x,以下是另一种可能对您有所帮助的方法: https://www.admon.org/scripts/downgrade-svn-from-1-6-to-1-4/

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-09-21
            • 1970-01-01
            • 2019-09-06
            • 2012-06-08
            相关资源
            最近更新 更多