今天SVN提交代码遇到“Previous operation has not finished; run 'cleanup' if it was interrupted“报错,“clean up “,都是报一样的错。执行cleanup时候,提示要cleanup。看来是进入死循环了。
写博客不喜欢废话就一针见血吧!!!!
1、点开 https://www.sqlite.org/download.html
2. 为了方便命令行执行,将sqlite3.exe放到svn 项目的主目录下,和.svn目录同级下。
3. 执行 sqlite3 .svn/wc.db "select * from work_queue".看到有4条记录。就是刚才我执行的一些操作。
3. 执行 sqlite3 .svn/wc.db "select * from work_queue".看到有4条记录。就是刚才我执行的一些操作。
226539|(sync-file-flags 93目录名 文件名)
226540|(file-remove 21 .svn/tmp/svn-7B43C232)
226541|(sync-file-flags 目录名 文件名)
226542|(file-remove 21 .svn/tmp/svn-7B48224E)
4. 执行 sqlite3 .svn/wc.db "delete from work_queue". 把队列清空。
5. 执行 sqlite3 .svn/wc.db "select * from work_queue". 确认一下是否已经清空队列,发现已经没有记录显示,说明已经清空了。
6. 最后再试一下,看是否可以 clean up了。果然成功了。
另外还有一种方法别人也推荐,但因为这个成功了就没再试。就是使用命令行工具svn.exe 执行cleanup svn项目目录。因为默认安装的时候,这个命令行工具是不被安装的,所以需要启动安装程序,选择”修改“,选上”命令行工具“才行。估计这个命令的实际效果和上面一种方法是类似的。不过应该比图形界面的右键菜单的更强大些吧。有兴趣可以试试。