Previous operation has not finished; run 'cleanup' if it was interrupted] 的排错过程

执行提交时报错,提示须要执行clean up,果断右键执行clean up,又提示一个新的错误:"Previous operation has not finished; run 'cleanup' if it was interrupted",此后又尝试了该项目目录树不一样目录进行更新或者提交,甚至把该项目删除从新check out,都会出现一样的问题;html

       这个时候查阅了一下资料得知:本地的SVN客户端中有一个嵌入式DB(里面大约有10多个表)SQLite,来保存SVN中管理的文件类型,项目结构树,用户操做进度等,上述咱们提交代码过程当中,SVN客户端用户代码提交操做非正常的终止,致使sqlite中某个表中用来记录用户对项目A的操做(增删改等)的数据来不及更改,因为咱们后续的全部针对项目A的操做,都优先从该表中检查项目A是否有未完成的操做,若是存在未完成操做就会提示"Previous operation has not finished",顺着这个思路,若是咱们找到这个表,且把这个表中相关记录删除,是否是就能够解决这个问题,经过查阅相关资料发现:在使用了svn的项目中,在项目根目录会有一个.svn文件夹,点击进入后结构以下:sql

 

 

 

就是箭头指向的这个文件,它就是SQLite数据库文件,咱们能够用SQLite3.exe打开它,下面开始解决上述问题:数据库

一、首先咱们去https://www.sqlite.org/download.html 页面下,找到下载解压缩后,获得以下这么个目录,里面有个sqlite3.exe,咱们就可使用命令行的方式打开这个文件;svn

二、将sqlite3.exe复制到项目根目录中,通wc.db文件同目录,以下:工具

 

 

三、经过命令行切换到项目根目录,并彩种sqlite3 wc.db命令查看wc.db文件内容,.table命令查看wc.db中全部的表,其中WORK_QUEUE表就是用来记录用户操做以下:命令行

命令解释:sqlite

sqlite3 wc.db:表示采用sqlite3工具打开wc.db文件,就像你使用microsoft office打开word文档同样htm

.table:能够认为wc.db是一个数据库文件,这个文件的自己就是一个微型数据库,.table命令表示查看这个微型数据库中的全部tableblog

四、既然是表,那么咱们能够采用sql执行增删改查就能够,在此处执行DELETE FROM WORK_QUEUE;命令执行删除;文档

五、4处操做完毕后,选中项目,执行svn的clean up操做,而后SVN项目能够正常使用了;

相关文章
相关标签/搜索