SVN报错“Failed to run the WC DB work queue associated with”解决办法

  最近在check SVN上的iOS代码时,失败报错:  Failed to run the WC DB work queue associated with “目录/文件”,clean up同样报错。最后在网上找到了解决方案并解决了问题,解决方法如下:

一、安装sqlite3

1 下载

  我是window10 32位,下载以下文件:

1.下载 sqlite-dll-win32-x86-3140100

2.下载 sqlite-tools-win32-x86-3140100

      官方下载地址:https://www.sqlite.org/download.html

2 安装

(1)先在C盘建一个文件夹 sqlite

(2)把 sqlite-dll-win32-x86-3140100 中解压出来的两个文件(sqlite3.def 和 sqlite3.dll)复制到刚才新建的目录(C:sqlite)中

(3)把 sqlite-tools-win32-x86-3140100 中解压出来的文件 sqlite3.exe 复制到C:sqlite 目录中

(4)添加系统环境变量, 在Path变量值后面添加 C:sqlite(windows7系统不要忘记分号),如下图所示:

(5)验证是否安装完成。运行cmd,切换到C盘根目录,输入sqlite3,然后回车,如果安装成功的话,会显示sqlite版本号,如下图所示:

   OK,Sqlite3已经安装完成了。

二、解决过程

  1. 打开cmd,进入到需要清理目录的.svn目录中,查看是否存在wc.db文件

C:WINDOWSsystem32>e:

E:>cd E:yscitworkspacecoding96_IOS.svn

E:yscitworkspacecoding96_IOS.svn>dir

 驱动器 E 中的卷没有标签。

 卷的序列号是 A05F-0B3D

 E:yscitworkspacecoding96_IOS.svn 的目录

2021/06/15  14:26                 3 entries

2021/06/15  14:26                 3 format

2021/06/15  14:26    <DIR>          pristine

2021/06/15  14:31    <DIR>          tmp

2021/06/15  14:31           671,744 wc.db

2021/06/15  14:31                 0 wc.db-journal

               4 个文件        671,750 字节

               2 个目录 47,469,176,320 可用字节

  2.用sqlite3打开wc.db文件

E:yscitworkspacecoding96_IOS.svn>sqlite3 wc.db

SQLite version 3.7.15.2 2013-01-09 11:53:05

Enter ".help" for instructions

Enter SQL statements terminated with a ";"

sqlite>

  3.看看wc.db里面都有哪些表(非必要):

sqlite> .table

ACTUAL_NODE    NODES          PRISTINE       WC_LOCK

EXTERNALS      NODES_BASE     REPOSITORY     WORK_QUEUE

LOCK           NODES_CURRENT  WCROOT

sqlite>

  4.接下来我们要做的就是对NODES、WORK_QUEUE、WC_LOCK进行清理。

# 看看有啥,非必要

sqlite> select * from NODES where local_relpath like '%*%';

# 1|src/path/to/136*12.png|0|src/path/to|1|dpath/to/136*12.png|12487|normal|||file|(svn:mime-type application/octet-stream)||$sha1$a6ab08429621146c6f3d2aeb3b246b7daa2e1c5f||10739|1563264828707442|提交人帐号|||||

# 1|src/path/to/136*12-hover.png|0|src/path/to|1|path/to/136*12-hover.png|12487|normal|||file|(svn:mime-type application/octet-stream)||$sha1$42fa4db5041d07f474d15c6b426e08de87f32d61||10739|1563264828707442|提交人帐号|||||

# 清理它,必要

sqlite> delete from NODES where local_relpath like '%*%';

sqlite> delete from WORK_QUEUE;

sqlite> delete from WC_LOCK;

  执行完上面三条清理命令后再svn update检出就ok了,有多少个这类文件上面步骤就要重复多少次(裂开.jpg)。大家如有什么更好的解决方法,欢迎评论区留言交流。

参考资料:

1.解决SVN Cleanup错误: Failed to run the WC DB work queue associated with

2.SVN:文件名、目录名或者卷标语法不正确

原文地址:https://www.cnblogs.com/yscit/p/14903911.html