svn报“Previous operation has not finished; run 'cleanup' if it was interrupted”的错误

-、叙述

今天需要更新接口文檔,所以就update了一下,結果報了如下錯誤:

     Error : Previous operation has not finished; run 'cleanup' if it was interrupted.
     Error : Please execute the 'Cleanup' command.
于是就去执行Cleanup命令,但是又报错了,说文档拒绝访问。
查到相关信息说针对新版的,要勾选break locks,
svn报“Previous operation has not finished; run 'cleanup' if it was interrupted”的错误

勾选了以后发现,等待它执行了很久,还是给了报错,依旧是文档拒绝访问。也许别人这样做就成功了呢,反正我是没成功。

下图为在网上找的旧版svn的cleanUp界面,

svn报“Previous operation has not finished; run 'cleanup' if it was interrupted”的错误

二、解决方案——使用db管理工具sqlite3

我们错误的提示是:“Previous operation has not finished”,出现这个问题的说法是,Svn的operation是存放在本地.svn\wc.db数据库文件里面,即在内嵌数据库wc.db的work_queue表中的。所以我们需要使用sqlite来操作。

sqlite是一个常用的嵌入式数据库,就是一个db文件。

1、在网上下载下载db管理工具sqlite3

2、将sqlite3.exe放置到对应cleanup异常的svn项目下的.svn文件夹下,如下图:

svn报“Previous operation has not finished; run 'cleanup' if it was interrupted”的错误

需注意的是,.svn默认是隐藏的,我们需要勾选将其显示出来。

svn报“Previous operation has not finished; run 'cleanup' if it was interrupted”的错误

3、在.svn目录下打开cmd命令

4、输入输入sqlite3 wc.db

5、输入 .table 查看所有表:会看到WORK_QUEUE

svn报“Previous operation has not finished; run 'cleanup' if it was interrupted”的错误

6、删除WORK_QUEUE表:输入delete from work_queue;

(在这里需注意要加分号!因为现在输入的是sql语句,结尾要加;(分号)才算完整 ,否则就进入…>的状态)

7、可以查看是否删除成功:输入select * from work_queue;

(我第一遍删除后查看发现WORK_QUEUE依旧存在,所以就又执行了一次delete语句)

8、 最后在出现问题的目录下,鼠标右键找到clean up,去执行Cleanup命令,如下图。

svn报“Previous operation has not finished; run 'cleanup' if it was interrupted”的错误

9、clean up成功

svn报“Previous operation has not finished; run 'cleanup' if it was interrupted”的错误

上一篇:Android开发——Context类的各种细节问题


下一篇:【42】android Context深度剖析