码迷,mamicode.com
首页 > 其他好文 > 详细

svn“Previous operation has not finished; run 'cleanup' if it was interrupted“报错的解决方法

时间:2018-09-19 11:35:56      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:app   文件   not   sqlite3   x86   数据   sele   rev   select   

今天碰到了个郁闷的问题,svn执行clean up命令时报错“Previous operation has not finished; run ‘cleanup‘ if it was interrupted”。无论你到那个父层次的目录执行“clean up “,都是报一样的错。执行cleanup时候,提示要cleanup。看来是进入死循环了。

可能是频繁做了一些改名,文件打开的时候更新或者提交操作,导致svn罢工了。这个也该算是svn的bug吧。类似的情况,其实之前也碰到过。之前都是图省事,把整个svn checkout的主目录都删掉,重新checkout来解决的。但是随着项目的深入开展,要更新的文件越来越多。这个问题迟早要解决的,试试看吧。问题的关键看来需要找到死锁的地方,解锁才行。网上查了下资料。Svn的operation是存放在“work queue’“里的。而“work queue’是在内嵌数据库wc.db的work_queue表中的。看看work_queue表中放了些什么,再做处理。

1.    内嵌数据库一般是用sqlite进行轻量级管理的。网上可以下到sqlite-shell-win32-x86: sqlite3.exe

2.    为了方便命令行执行,将sqlite3.exe放到项目的.svn目录下,进入cmd命令模式,并输入sqlite3命令

3, 使用sqlite命令 .open wc.db 连接wc.db数据库.

4.    执行 "select * from work_queue".看到有1条记录。就是刚才我执行的一些操作。

  733|(base-remove src/main/webapp/WEB-INF/lib/toolkit-0.7.0.jar 5 10819 1 1)

4.    执行  "delete from work_queue". 把队列清空。

5.    执行  "select * from work_queue". 确认一下是否已经清空队列,发现已经没有记录显示,说明已经清空了。

6.    最后再试一下,看是否可以  clean up了。果然成功了。

 

技术分享图片

技术分享图片

 

svn“Previous operation has not finished; run 'cleanup' if it was interrupted“报错的解决方法

标签:app   文件   not   sqlite3   x86   数据   sele   rev   select   

原文地址:https://www.cnblogs.com/snail90/p/9673374.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!