我可以使用精确的文件副本在计算机之间复制SVN存储库吗?

Bri*_*ost 5 svn copy repository

我在Windows机器上有一个大型存储库.我想将整个存储库复制到另一台机器上,理想情况下不需要通过'dump'或使用svnsync.如果我可以保证在复制过程中没有文件被更改,我可以使用传统文件复制技术在第二台机器上进行精确的文件复制吗?

zie*_*mer 6

如果您正在使用Berkeley DB存储库存储,那么您需要非常小心 - 包括版本匹配,甚至操作系统.但是,如果您使用的是快速安全文件系统(FSFS,目前是任何新存储库的默认设置),则它非常便携.我经常这样做,并且在系统之间复制存储库没有任何问题,包括Linux < - > Windows,甚至Subversion 1.6和1.7之间.(如果您要跨越Subversion版本,请观看Subversion发行说明.)


yms*_*yms 3

如果两个系统中的 subversion 版本完全相同,应该没问题。我以前曾这样做过,没有遇到任何问题。

即使版本不同,它仍然应该可以工作,来自 svn book

转储和加载 Subversion 存储库数据的原因有很多。在 Subversion 的早期,最常见的原因是 Subversion 本身的演变(...)。现在,自 Subversion 1.0 版本以来,此类架构更改尚未发生,并且 Subversion 开发人员承诺在 Subversion 的次要版本(例如从 1.3 到 1.4)之间升级时不会强制用户转储和加载其存储库。

对于您的具体情况(版本 1.6 与 1.7),版本 1.7 的发行说明中有一个段落澄清了这种情况:

Subversion 1.7 服务器使用与 Subversion 1.6 相同的存储库格式。因此,可以在 1.6.x 和 1.7.x 服务器之间无缝升级和降级,而无需更改磁盘存储库的格式。(对于任何一对 1.x 和 1.y 服务器来说,这通常都是不正确的,但恰好适用于 1.6 和 1.7。)

  • 我确信 1.5 到 1.6 会失败......进行转储应该不会太难,如果可能的话,我建议您针对您的情况采用这种方式。 (2认同)