SVN - 错误代表存储库 UUID 'XXX...' 与预期的 'XXX..' 不匹配

gaw*_*ron 5 svn tortoisesvn

Zend Framework 的 SVN 服务器昨天宕机了,现在又回来了 我仍然从我的外部“Zend”目录中收到错误消息。每当我尝试更新或切换到另一个分支时,我都会收到此错误。

Error     Repository UUID 'XXXX...' doesn't match expected 
Error     UUID 'XXXX...'
Run Code Online (Sandbox Code Playgroud)

UUID 彼此不同。

我正在使用 tortoiseSVN 客户端,但我相信这是一个 SVN 错误。

Sma*_*ger 6

我没有使用过 Zend 的服务器,但这是一个 SVN 错误。您的工作副本与最初创建它的 UUID 的存储库相关联。该错误意味着自创建 WC 以来服务器上的 UUID 已更改。

这通常发生在服务器上已完成转储/加载循环且未保留存储库的 UUID 时。

有两种方法可以解决这个问题。在客户端:

 svn switch --relocate
Run Code Online (Sandbox Code Playgroud)

将您的 WC 重新定位到新的存储库(我假设应该是旧的)。我认为 Tortoise 有一个单独的relocate选项,而不仅仅是switch.

或者,在服务器上:

svnadmin setuuid <repository path> <new uuid>
Run Code Online (Sandbox Code Playgroud)

您可以将 repo 的 UUID 设置为旧的,然后您现有的 WC 应该再次开始与它对话。(svn info在您的 WC 内将向您显示它所期望的 UUID。)

如果您无法控制 repo,则需要前一个选项,如果您可以控制它,则需要后者。(其他客户会看到同样的问题)。

有关存储库 UUID 的更多详细信息,请访问:http : //svnbook.red-bean.com/en/1.5/svn.reposadmin.maint.html#svn.reposadmin.maint.uuids