复制SVN仓库

7

我在托管的SVN服务上有一个仓库,现在需要将其迁移到我们本地托管的SVN服务。该托管服务提供了导出功能,我已经使用了该功能。但是如何将导出的文件导入到新的仓库中呢?

编辑:

我尝试使用svnadmin load命令,但是出现了错误信息:

% svnadmin load . < ~/ss2_14066_rev36
svnadmin: Malformed dumpfile header

我正在导出的服务是http://beanstalkapp.com,他们的导出帮助页面中提到,这个导出文件可以重新导入到另一个svn服务器。这可能是由于服务器版本不匹配引起的吗?
4个回答

7
如果导出文件是通过 svnadmin dump 创建的,您可以使用以下命令将其导入到一个新的、空的代码库中:
# cd /path/to/new/repo
# svnadmin load . < /path/to/dumpfile

1
我收到以下错误信息:svnadmin: Malformed dumpfile header我正在与主机核实此导出文件的确切格式... - Ian
如果 svnadmin 不喜欢它,你应该向你的托管服务咨询关于你应该如何处理这个文件。 - Bombe
谢谢,看着这个文件,似乎有些问题。如果这个文件能正常工作的话,我会把这个答案标记为正确的。 :P - Ian
SVN备份文件非常脆弱。确保它没有被文本编辑器或其他任何程序编辑过。 - markus
1
@Ian 如果转储文件被压缩,请先解压缩,然后运行加载命令。 - johnnieb

4
如果您的托管提供商使用Subversion 1.4或更高版本,则可以使用svnsync从存储库创建副本。

有关更多详细信息,请参见Subversion书


2

有可能这不是一个dump文件,而是整个代码库的tar.gz压缩包吗?


0

这一段:

/path/to/dumpfile

必须是指向可以流式传输回svnadmin load命令的(.dmp)文件的绝对路径,而不仅仅是目录位置。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接