SVN执行clean up时经常出现Previous operation has not finished; run 'cleanup' if it was interrupted这种错误信息,现提供

SVN执行clean up时经常出现Previous operation has not finished; run 'cleanup' if it was interrupted这种错误信息,现提供解决方法

 

1、知识准备:

①svn的operation是存放在“work queue”里的,而“work queue’是在内嵌数据库wc.db的work_queue表中的。

看看work_queue表中放了些什么,再做处理。

②进入sqlite命令行环境,输入.tables,可以查看数据库的表

③与lock有关的数据通常在work_queue和wc_lock表中,清空了两张表通常就能解决问题啦

附上sqlite3的下载地址:http://pan.baidu.com/s/1miPYDgG

 

2、解决方法:

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

②为了方便命令行执行,将sqlite3.exe放到svn项目的主目录下,和.svn目录同级下。如图(.svn是隐藏文件夹,需要设置才能显示出来)

SVN执行clean up时经常出现Previous operation has not finished; run 'cleanup' if it was interrupted这种错误信息,现提供SVN执行clean up时经常出现Previous operation has not finished; run 'cleanup' if it was interrupted这种错误信息,现提供

③运行-->cmd-->一路cd跳转到.svn所在的上一个目录

执行sqlite3 .svn/wc.db "select * from work_queue".看到有一些记录。就是刚才我执行的一些操作。

SVN执行clean up时经常出现Previous operation has not finished; run 'cleanup' if it was interrupted这种错误信息,现提供SVN执行clean up时经常出现Previous operation has not finished; run 'cleanup' if it was interrupted这种错误信息,现提供

SVN执行clean up时经常出现Previous operation has not finished; run 'cleanup' if it was interrupted这种错误信息,现提供

④执行sqlite3 .svn/wc.db "delete from work_queue". 把队列清空。

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

⑥最后再试一下,看是否可以clean up了。

⑦发现提示lock,重新查看一下跟数据库有关的表格(其实只要关注wc_lock和work_queue就可以了)

发现wc_lock也有记录,一并清了

SVN执行clean up时经常出现Previous operation has not finished; run 'cleanup' if it was interrupted这种错误信息,现提供SVN执行clean up时经常出现Previous operation has not finished; run 'cleanup' if it was interrupted这种错误信息,现提供

SVN执行clean up时经常出现Previous operation has not finished; run 'cleanup' if it was interrupted这种错误信息,现提供

8、 再次clean up,好了,现在问题解决了。

详情参照一下链接:https://blog.csdn.net/kuubao/article/details/70549613

https://www.cnblogs.com/simmonner1999/p/5533465.html