我正在尝试将CVS存储库转换为mercurial但无法使其工作.
我从一个干净的结账开始:
cvs -d :sspi;username=xxx;hostname=yyy.local:/cvsrepos checkout repo
Run Code Online (Sandbox Code Playgroud)
哪个工作正常
然后我做:
hg convert .
Run Code Online (Sandbox Code Playgroud)
但它失败了:
assuming destination .-hg
initializing destination .-hg repository
connecting to :sspi;username=xxx;hostname=yyy.local:/cvsrepos
abort: unexpected response from CVS server (expected "Valid-requests", but got 'E cvs [server aborted]: Root :sspi;username=xxx;hostname=yyy.local:/cvsrepos must be an absolute pathname\n')
Run Code Online (Sandbox Code Playgroud)
我在Windows 7上运行cvsnt
编辑:
调查此更多,似乎mercurial启动本地服务器cvs server,然后与该实例而不是远程服务器进行通信.
我基于以下观察:
C:\cvstest\:sspi;username=xxx;hostname=yyy.local:\cvsrepos当然失败的文件
.是不是hg不理解sspi连接字符串?
编辑2:
不是解决方案,但我找到了一种解决方法:将完整的远程存储库复制到我的机器上,并且:
cvs -d :local:\localcopyofrepo checkout repo
hg convert repo
Run Code Online (Sandbox Code Playgroud)
一切都很好