SVN clean提示先前的操作未完成

svn执行clean up命令时报错:Previous operation has not finished; run 'cleanup' if it was interrupted

出现该问题时,即使将本地项目删除都无法解决这个问题。

解决方案有两种:

  • 卸载SVN重新安装
  • 修改SVN数据库

修改SVN数据库

每个项目的根目录都存在一个.svn的隐藏文件夹,该文件夹下保存了SVN对于该项目的基础配置。

解决上述问题的关键在于修改.svn/wc.db数据库,清空内部的WORK_QUEUE表。

1、下载sqlite3客户端

由于SVN使用的是sqlite数据库,所以我们需要使用sqlite3.exe这个客户端文件。该可执行文件可以直接百度下载。

2、启动sqlite3客户端

1、将下载好的sqlite3.exe复制到需要操作的项目的.svn目录下:

sqlite3存放目录

2、在当前目录下使用SHIFT + 鼠标右键进入命令行。执行sqlite3 wc.db打开数据库

sqlite3打开数据库

操作sqlite3数据库

.table用于查看数据库内部的表

sqlite3打开数据库

上图我们可以看到WORK_QUEUE表。

执行delete from work_queue;命令清空所有任务

sqlite3打开数据库

重新clean up,问题解决。