【svn】Cleanup failed to process the following paths和Failed to run the WC DB work queue错误解决

谁说胖子不能爱 提交于 2020-03-17 12:31:56

1. 错误现象

使用svn执行checkout过程中,由于某些异常操作或不规范的文件命名导致命令执行失败,并弹出提示cleanup。如下(出错时忘记截图保存,此处借用网友的一张图片):

但执行cleanup命令后,又弹出如下弹出(同样借用网友图片)导致svn无法使用。

2. 解决方案

2.1 下载sqlite3.exe

需要清空svn管理数据库中的错误记录,那么就需要数据库操作工具,sqlite3.exe是一个轻量级数据库的操作工具,通过命令执行数据库的增删改查操作。如果你已有类似数据库的管理工具,可以忽略此步骤。

下载路径:http://www.sqlite.org/download.html

(Android开发者,可以直接在sdk/platform-tools目录下有现成的sqlite3.exe文件)

2.2 放置sqlite.exe

将sqlite3.exe放至.svn目录下,可以看到该目录下有wc.db文件,就是我们要操作的数据库文件。

2.3 执行SQL语句

1)运行cmd,并进入.svn目录

2)执行sql命令,清空wc.db下的work_queue和wc_lock两张表

  • sqlite3 /wc.db 
  • delete from work_queue;
  • delete from wc_lock;

3)一般情况下,问题即可解决,再次执行svn的cleanup操作。即可正常使用

2.4 文件名包含特殊符号导致的错误解决

除了上述清楚work_queue和wc_lock两张表以外,还需要该数据库下nodes表中错误路径记录。

以文件名中包含“*”号为例:那么需要接着上面的sql后,再执行:

delete from nodes where local_relpath like '%*%';

然后再执行cleanup,问题可彻底解决。

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!