【问题标题】:Are Subversion repositories binary compatible (cross-platform)?Subversion 存储库二进制兼容(跨平台)吗?
【发布时间】:2010-03-21 20:13:38
【问题描述】:

我的 Subversion 存储库当前安装在安装了 Windows 和 Ubuntu Linux 的双引导系统上。是否可以在两个操作系统上使用相同的存储库,所以如果我使用 Ubuntu,我可以启动 svn 服务并访问我在 Windows 中使用的相同存储库?

例如

  • 如果我的笔记本电脑在 Ubuntu 上运行,Linux svn 服务将访问存储库文件
  • 后来在我使用 XP 时被 Windows svn 服务访问

(我不会同时用两个不同的subversion服务器访问相同的文件)

或者 - 换句话说:如果已在 Windows 分区上创建并使用了 Subversion 存储库,我是否也可以使用 Linux 重新启动并启动 Subversion 服务器以使用相同的存储库?

【问题讨论】:

    标签: svn cross-platform repository


    【解决方案1】:

    Subversion 存储库是二进制兼容的如果它们使用 FSFS DB 格式 (cat repos/db/fs-type) 而不是 Berkeley DB,并且使用了兼容版本的 Subversion。

    Subversion 发行说明会指出存储库格式何时发生更改。例如,Subversion 1.5 introduced an optional repository format upgrade 支持合并跟踪,as did 1.4,但 Subversion 在创建存储库时始终使用最新格式。似乎所有后 FSFS 格式升级都是可选的,而不是强制性的——所以您需要做的就是确保您的存储库是由所涉及的最旧版本的 Subversion 创建的。

    【讨论】:

      【解决方案2】:

      你的意思不是很清楚。

      您是否在 Windows 上安装了要从 Linux 系统启动(和使用)的 svn 服务?还是您只想访问您的存储库?

      恕我直言,您可以使用正确的工具(Linux 上的 svnadmin)创建存储库。这是一个包含您的数据和大量元数据的目录。此目录必须以某种方式公开(例如 webdav、svn 服务)。

      从 Linux 系统访问 svn 存储库的一种方法是直接访问存储库目录。例如:svn co file://mnt/Windows_C/path/to/repository/project

      你必须使用 -o rw 挂载你的 Windows 分区。

      【讨论】:

      • 我更喜欢 SVN:// 协议,因为它可以更轻松地在两个平台上使用相同的工作副本。
      • file://mnt/Windows_C/path/to/repository/project svn://repository/project 所以我需要两个单独的工作副本(或每次操作系统更改时重新定位)
      • 所以您想在两个系统上共享工作副本,而不仅仅是存储库?您的 Windows 分区上有一个存储库(不是工作副本),您在使用 Linux 系统时要访问它。那是对的吗?或者您想在两个系统之间共享一个工作副本?如果你只有一个 repo,那么从 linux 访问它的唯一方法是使用 file:// 协议。但是与使用 svn:// 相比,您不会有任何缺点。共享工作副本是另一回事。但它也应该起作用。当涉及到文件编码和行结束时,您必须注意。
      【解决方案3】:

      是的,效果很好,在工作中我们结合了 Windows、OS X、Linux 和 BSD,所有这些都使用相同的 Subversion 存储库。

      【讨论】:

      • 直接针对存储库,还是在它前面使用 apache/svnserve 实例?换句话说,您的网址中使用file:///http(s)://svn://
      • 所有这些客户端都有自己的颠覆服务器运行?我的问题是关于使用 Linux svn 服务访问存储库的问题,如果我的笔记本电脑使用 Ubuntu 运行,然后当我使用 XP 时使用 Windows svn 服务。
      • 正如凯文所说:这应该是可能的。但是恕我直言,您根本不需要 svn 服务,您应该使用 'file://' 协议。
      猜你喜欢
      • 2010-12-28
      • 2011-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多