SVN cleanup操作反复失败解决办法 (转载)

Posted hyao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SVN cleanup操作反复失败解决办法 (转载)相关的知识,希望对你有一定的参考价值。

SVN cleanup操作反复失败解决办法 2014-11-21 11:12:24

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://flyingcat2013.blog.51cto.com/7061638/1580692

今天在更新项目的时候遇到一个问题,按惯例要cleanup才能重新更新。但是很不幸,在cleanup的时候又遇到了问题!

1
   svn cleanup failed–previous operation has not finished; run cleanup if it was interrupted

要更新先要cleanup,但是cleanup的失败信息又叫我cleanup……这是一个死循环!本着“内事不决问百度,外事不决问Google”的原则,终于找到一个解决办法,参见这里:http://www.anujvarma.com/svn-cleanup-failedprevious-operation-has-not-finished-run-cleanup-if-it-was-interrupted/

Usually, an svn cleanup fixes most issues with tortoise svn. However, I ran into an issue which caused me some grief.
The specific error I was seeing:
Previous operation has not finished; run ‘cleanup‘ if it was interrupted

Solution:

 Somehow, svn is stuck on the previous operation. We need to remove this operation from it’s ‘work queue’.
The data is stored in the wc.db sqllite database in the offending folder.

1. Install sqllite (32 bit binary for windows) from here

2. sqlite .svn/wc.db “select * from work_queue”

The SELECT should show you your offending folder/file as part of the work queue. What you need to do is delete this item from the work queue.

3. sqlite .svn/wc.db “delete from work_queue”

That’s it. Now, you can run cleanup again – and it should work. Or you can proceed directly to the task you were doing before being prompted to run cleanup (adding a new file etc.)

Also, svn.exe (a command line tool) is part of the Tortoise installer – but is unchecked for some reason. Just run the installer again, choose ‘modify’ and select the ‘command line tools’.

感觉这是一个设计上的缺陷:使用工作队列来保存数据,后一个操作依赖于前一个操作的结果,一旦失败就要使用cleanup操作。但是,当cleanup操作失败的时候这个机制就陷入了死循环。解决办法就从它的数据库中直接删除工作队列中的数据,注意是sqlite数据库。

由于正在做android开发,SDK中已经自带了sqlite3.exe工具,因此使用起来很方便。到项目的.svn目录下找到wc.db文件,使用sqlite3打开它,执行以下命令:

1
  delete from work_queue;

完毕后关闭数据库,重新打开项目,即可恢复正常操作。

本文出自 “飞翔的猫咪” 博客,请务必保留此出处http://flyingcat2013.blog.51cto.com/7061638/1580692

以上是关于SVN cleanup操作反复失败解决办法 (转载)的主要内容,如果未能解决你的问题,请参考以下文章

svn "Previous operation has not finished; run 'cleanup' if it was interrupted”解决办法(示例代码

如何解决svn清理失败 不能更新 cleanup失败 cleanup乱码 更新乱码 svn更新提示清理 清理乱码不能清理 svn故障修复SVN cleanup 陷入死循环 svn cleanup时遇

SVN提示is already locked 解决办法

解决SVN Cleanup错误: Failed to run the WC DB work queue associated with

svn cleanup 失败问题解决

怎么解决svn清理失败且路径显示乱码问题