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

时间:2021-04-11 20:50:07

从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崩溃。

解决方法

方法一:

备份自己修改的文件,删除之前download的文件,重新从SVN上download一份到本地。这样太耗时,不方便。

方法二:

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

1. 到网上下载sqlite3.exe,(http://www.cr173.com/soft/6852.html)解压到D:\document\.svn文件夹下,解压后的sqlite3.exe才475KB大小。

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

说明:D:\document\.svn 这个路径是你从SVN上拉下来的代码或文件的本地路径。.svn文件夹默认是隐藏不可见的,需要设置可见:工具 - 文件夹选项 - 查看 - 隐藏文件和文件夹。

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

2. 运行cmd,进入到D:\document\.svn文件夹下,执行sqlite3 wc.db,打开数据库

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

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

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

4. 执行delete from work_queue; 命令。

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

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