一、问题描述:
经常用SVN的人都知道,有时候更新文件更新着更新一般,突然卡顿住,死在那边动都不动出现提示:svn cleanup failed–previous operation has not finished; run cleanup if it was interrupted,这个时候你强制关闭掉,会出现图标等消失还有部分右键更新功能都没了,已经跟断开SVN没什么区别,基本很多人选择了
Check Out,但是面对工程和文件庞大的情况下,显然效率没那么高。
二、原因分析:
这个是由于CleanUp突然中断后,陷入了死循环导致的
三、如何解决:
1、重新Check Out,但是这种效率不高。(不建议)
2、清空SVN队列,其实SVN内置有SqlLite数据库(强烈建议)
步骤一:到SQLITE官方网站下载SQLITE3数据库(http://www.sqlite.org/download.html),记住是SQLITE3或者http://pan.baidu.com/s/1pLU2KrT下载(本人已经上传)
步骤二:找到你工程下面的SVN根目录,会看到一个透明的.svn文件夹(图一),.svn文件夹下面是否又有个,wc.db文件,如果不能看到,那说明,你在电脑的工具上面默认设置了隐藏拓展名和文件选项,设置成显示就可以(图二)
图一:
图二:
步骤三:将下载好的sqlite3.exe放到.SVN的同级目录下(图3)
图三:
步骤四:启动CMD命令运行(图四、五),
图四、五:
步骤五:执行sqlite3 .svn/wc.db "select * from work_queue",这时你会看到很多条记录
步骤六:执行delete from work_queue命令
最后:此时你再去之前无法cleanup的文件夹。操作cleanup会看到图标也恢复正常了