首页 > 其他 > 详细

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

时间:2019-07-08 20:13:48      阅读:134      评论:0      收藏:0      [点我收藏+]

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

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

 技术分享图片

 

 

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

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

2、将sqlite3.exe复制到项目根目录中,通wc.db文件同目录,如下:

 技术分享图片

 

3、通过命令行切换到项目根目录,并彩种sqlite3 wc.db命令查看wc.db文件内容,.table命令查看wc.db中所有的表,其中WORK_QUEUE表就是用来记录用户操作如下:

命令解释:

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

.table:可以认为wc.db是一个数据库文件,这个文件的本身就是一个微型数据库,.table命令表示查看这个微型数据库中的所有table

4、既然是表,那么我们可以采用sql执行增删改查就可以,在此处执行DELETE FROM WORK_QUEUE;命令执行删除;

5、4处操作完毕后,选中项目,执行svn的clean up操作,然后SVN项目可以正常使用了;

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

原文:https://www.cnblogs.com/erma0-007/p/11153424.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!