将svn存储库从Linux移动到Windows

时间:2011-09-15 18:46:20

标签: svn repository

我对此做了很多研究,并认为这将是一件容易的事,但我猜错了。我将概述我为移动svn存储库所做的一切,但是我无法重新定位或检查目录。

Linux config =

svn in /home/services/svn/asr
checkout would be svn://"server name"/asr
performed svnadmin dump /home/services/svn/asr > asr.dump

这里的一切都运行良好,我将25GB转储移动到Windows服务器

Windows config =

created a new repository (svnadmin create c:\svn\asr)
performed svnadmin load c:\svn\asr < asr.dump
everything loaded fine to revision 538 (which is head revision)
created a service to run svnserve.exe with --root c:\svn\asr
added my passwd, authz, and setup everything

尝试重定位时,我收到一条关于不是存储库根目录的错误。我正在使用svn://“服务器名称”/ asr

如果我创建一个新文件夹并从svn“//”服务器名称执行结帐“/ asr我收到错误说明:

2 个答案:

答案 0 :(得分:1)

我怀疑问题可能在于服务的配置,而不是存储库的完整性。

首先要尝试的是,您是否可以从服务器上的命令提示符执行svnlook操作,例如svnlook log c:\svn\asr。如果那很好,那么它表明存储库是可以的。使用c:\​​ svn \ asr的根目录设置svnserve乍一看似乎没问题,但您可以尝试在前台运行该服务,这可能会为您提供更多信息:

runas /user:whatever_your_svn_service_user_is_called cmd
(opens a new command window running as the SVN service user)
svnserve -X --foreground --root c:\svn\asr

现在再试一次结帐。

答案 1 :(得分:0)

您的问题不是转储,而是服务器的配置: 你必须通过

启动服务器
svnserve.exe -d  --root c:\svn\  

(没有reponame)然后您可以通过URL结帐或重新定位

svn://<Servername>/asr 

否则你已经说过asr两次(第一次在svnserve中,第二次在URL中)并且这不是现有的存储库(将是c:\ svn \ asr \ asr ..)。

顺便说一句:如果您使用过FSFS存储库(我认为自SVN 1.3以来的标准设置),您可以在没有转储/重新加载的情况下复制存储库。转储/重新加载周期非常慢,转储非常臃肿