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

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

标签:SVN cleanup sqlite3 work_queue

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。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

时间: 2024-10-07 05:21:24

SVN cleanup操作反复失败解决办法 (转载)的相关文章

SVN cleanup操作反复失败解决办法

今天在更新项目的时候遇到一个问题,按惯例要cleanup才能重新更新.但是很不幸,在cleanup的时候又遇到了问题!    svn cleanup failed–previous operation has not finished; run cleanup if it was interrupted 要更新先要cleanup,但是cleanup的失败信息又叫我cleanup--这是一个死循环!本着"内事不决问百度,外事不决问Google"的原则,终于找到一个解决办法,参见这里:ht

SVN cleanup 反复失败解决办法

svn cleanup cleaning up 操作反复失败,svn提示的问题是版本需要更新,更新成最新的版本之后,依旧反复失败,陷入死循环.还好找一个blog上的方法试了一下,成功了.先说故障环境:OS: win7 x64TortoiseSVN 1.9.5, Build 27581 - 64 Bit , 2016/11/26 09:18:58Subversion 1.9.5, -releaseapr 1.5.2apr-util 1.5.4serf 1.3.9OpenSSL 1.0.2j 26

MySQL安装失败解决办法

一..msi版的MySQL安装包在最后执行的时候到第三步就死掉了,直接未响应 这是因为以前在本机中安装过MySQL,卸载的时候没有卸载干净导致的,因为有的文件夹隐藏的很深. 1.卸载MySql相关组件: 2.删除MySQL的安装目录: 3.在注册表(regedit)查询mysql,全部删除: cmd -> regedit 1.HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL 目录 2.HKEY_

异常详细信息: System.Data.SqlClient.SqlException:用户 'IIS APPPOOL\DefaultAppPool' 登录失败解决办法

1.安全性---登录名---新建登录名 2.常规----搜索 3.添加SERVICE用户-- 4.服务器角色---勾上sysadmin: IIS中: 应用程序池---对应的程序池上右键---高级设置 进程模块---标识---选择NetworkService(与数据库中设置统一) 异常详细信息: System.Data.SqlClient.SqlException:用户 'IIS APPPOOL\DefaultAppPool' 登录失败解决办法

vs2008调用opencv2.4.9的imread()函数失败解决办法

这两天在看opencv的C++接口函数,刚开始就出现问题: 一个简单的显示图像的程序,就是运行不成功: #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> #include <string> using std::string; using namespace cv; int main() { string str="E:\\test\\LENA.BMP";

pureftp 读取目录列表失败解决办法

最近在使用pureftp的时候遇到了文件目录无法读取或者读取很慢的问题,同时服务器上配置了iptables防火墙规则,问题主要由此引起. 解决方法如下: 1.首先查看是否开启了20.21端口,如果没有请开启. 2.停止iptables:service iptables stop,再次连接,可以成功读取列表. 3.修改iptables-config配置文件: 打开:vim /etc/sysconfig/iptables-config 将IPTABLES_MODULES修改为:IPTABLES_MO

检索 COM 类工厂中 CLSID 为 {{10020200-E260-11CF-AE68-00AA004A34D5}} 的组件时失败解决办法

检索 COM 类工厂中 CLSID 为 {10020200-E260-11CF-AE68-00AA004A34D5} 的组件时失败,解决方法如下: 第一步:首先将msvcr71.dll,  SQLDMO.DLL, Resources/2052/sqldmo.rll,Resources/1033/sqldmo.rll 拷贝到C:/Program Files/Microsoft SQL Server/80/Tools/Binn目录. 下载SQLDMO文件 第二步:打开开始,在运行中输入 regsvr

在ASP.net中的UpdatePanel,弹窗失败解决办法

原文:在ASP.net中的UpdatePanel,弹窗失败解决办法 最开始我用: Response.Write("<script>alert('和哈呵呵呵呵呵呵!')</script>"); 在没有UpdatePanel时,这个有效,能够正确弹出提示窗口. 后面,页面改进,加上局部刷新后,该方式失效了.探索出新的方式: ScriptManager.RegisterStartupScript(this.UpdatePanel1, this.GetType(),&q

FreeBSD 下sac101.6a编译失败解决办法

由于FreeBSD和Linux下C的定义有些不同,可下载下面补丁修复编译问题. http://www.iris.washington.edu/pipermail/sac-help/attachments/20130910/7f30ed61/attachment.obj FreeBSD 下sac101.6a编译失败解决办法,布布扣,bubuko.com