将存储库移至另一个网络

时间:2018-12-14 16:54:11

标签: svn tortoisesvn

我在Tortoise SVN 1.8.4版中有几个存储库,我想导出到另一个未连接到正在运行的网络的网络,因此必须通过USB进行传输。

我想做的是导出存储库及其签入历史记录。现在,我从存储库中可以执行导出操作,但是看不到的是带有历史记录的导出操作。

导出将进入另一个网络上的SVN。有什么工具可以帮我完成这项工作吗?

2 个答案:

答案 0 :(得分:0)

如果要将Subversion存储库重新放置到新服务器上,可以使用几种其他选择:

1。 svnadmin dump(推荐)

这是一个非常轻松的过程,因为转储存储库并将其重新加载的整个过程仅涉及三个命令。在网络/服务器上,您必须执行svnadmin dump命令(注意:不是您的工作副本,而是svn信息库的物理URL。

svnadmin dump /path/to/repository > myRepo.dmp

将此.dmp文件复制并保存到USB。然后,在新网络/服务器上传输/上载.dmp文件之后,可以运行:

svnadmin create /path/to/newRepo
svnadmin load /path/to/newRepo < myRepo.dmp

然后所有文件和版本历史记录将加载到新存储库中。您将能够像往常一样(尽管使用新的存储库URL)在新存储库上svn checkoutsvn commit等。

注意:如果您想查看结果,请随时在计算机上进行本地测试(上述第二组命令)。获取.dmp文件后,在计算机上创建本地存储库,然后尝试将.dmp文件加载到该本地存储库上。您应该能够看到历史记录中的所有内容。

2。将整个/ path / to / repository文件夹本身移动到USB上,然后将其重新放置在服务器上

我不建议这样做,因为如果您在移动/复制文件时访问存储库,则可能导致数据库损坏。

但是基本上,您还可以选择将存储库剪切并粘贴到USB上,然后将文件夹传输/上传到新服务器。

答案 1 :(得分:0)

上面克里斯建议的步骤是正确的过程

1创建一个回购转储。如果存在多个存储库,请重复相同的过程 svnadmin dump / path / to / repo> Repo.dmp

2)通过FTP / SCP /磁盘/驱动器等传输.dmp ...

3(使用 svnadmin创建/path/to/Repo.dmp svnadmin load / path / to / newRepo

如果我们要迁移到不同版本的SVN,则可能会遇到换行符/字符/行尾等问题。使用--ignore <>