svn报错:“Previous operation has not finished; run 'cleanup' if it was interrupted“

825 阅读1分钟

一、问题描述

从SVN上拉下来Document文档(word和excel),在本地修改后,准备通过TortoiseSVN提交,发现报错。

Error: Previous operation has not finished; run 'cleanup' if it was interrupted  。

无论是commit还是updete都不行,提示需要执行clean up 。但svn执行clean up命令时报错 "Previous operation has not finished; run 'cleanup' if it was interrupted"。 无论你到那个父层次的目录执行 "clean up",都是报一样的错。

二、问题原因

可能是修改本地的文件之前没有update,导致commit的时候产生冲突,致使SVN崩溃。

三、解决方法

svn 的 operation是存放在 "work queue" 里的。而 "work queue" 是在内嵌数据库 wc.db 的 work_queue 表中的。看看work_queue表中放了些什么,再做处理。

1. 到网上下载sqlite3.exe,解压到当前项目的 .svn 文件夹下,解压后的sqlite3.exe才475KB大小。

image.png

2. 运行cmd,进入到项目的 .svn 文件夹下,执行sqlite3 wc.db,打开数据库

image.png

3. 执行.table 可以查看表名

image.png

4. 执行delete from work_queue; 命令

image.png

5. 重试 clean up 操作,问题解决

四、参考

svn报错:“Previous operation has not finished; run 'cleanup' if it was interrupted“