我在Tortoise SVN 1.8.4版中有几个存储库,我想导出到另一个未连接到正在运行的网络的网络,因此必须通过USB进行传输。
我想做的是导出存储库及其签入历史记录。现在,我从存储库中可以执行导出操作,但是看不到的是带有历史记录的导出操作。
导出将进入另一个网络上的SVN。有什么工具可以帮我完成这项工作吗?
答案 0 :(得分:0)
如果要将Subversion存储库重新放置到新服务器上,可以使用几种其他选择:
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 checkout
,svn commit
等。
注意:如果您想查看结果,请随时在计算机上进行本地测试(上述第二组命令)。获取.dmp
文件后,在计算机上创建本地存储库,然后尝试将.dmp
文件加载到该本地存储库上。您应该能够看到历史记录中的所有内容。
我不建议这样做,因为如果您在移动/复制文件时访问存储库,则可能导致数据库损坏。
但是基本上,您还可以选择将存储库剪切并粘贴到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 <>