2

我想将 svn 文件夹移动到另一个 svn 文件夹。我在旧的 svn 文件夹中使用了转储。之后我使用 svnrdump 加载到另一个 svn 文件夹。它们是同一台机器不同的 svn repo。在加载过程中,我用 Ctr+C 切断。之后我尝试再次加载。但是以下错误正在返回。

> Failed to get lock on destination repos, currently held by 'current computer name'  
> svnrdump: E200015: Caught signal  
> svnrdump: E200042:
> Additional errors: svnrdump: E200015: Caught signal

这是我的svn代码。

svnrdump dump http://...... > C:/mydump
svnrdump load http://.......< C:/mydump

我该如何解决这个问题?谢谢大家

4

1 回答 1

6

svn:rdump-lock您可以在目的地删除:

svn propdel svn:rdump-lock --revprop -r 0 DESTINATION

但是在这种情况下,如果您想要svnrdump loadagian,您将收到另一条错误消息(类似于以下内容):

svnrdump: E160020: File already exists: filesystem '62fb10e7-eabe-e711-825a-005056a07bed', transaction '4-5', path '/trunk'

我没有找到其他解决方案:

svn checkout FAILED_DESTINATION failed_dest
cd failed_dest
svn rm *
svn commit . -m "restart load"
svnrdump load FAILED_DESTINATION < full.dump

如果你能sshFAILED_DESTINATION也许可以试试svnadmin load -r LAST_SUCCESS_REV:HEAD < dumpfilesvnrdump不支持-r选项。但我认为在这种情况下(能够ssh)更简单地删除部分存储库并创建一个新存储库并svnrdump load再次执行。

我不是颠覆专家,我没有任何(更好的)想法。

于 2017-11-01T10:23:11.353 回答