今天在打开某一文档的情况下,使用SVN更新文档,在更新的过程中报错,提示需要执行clean up,果断右键执行clean up,又提示一个新的错误:"Previous operation has not finished; run 'cleanup' if it was interrupted",此后又尝试了该项目目录树不同目录进行更新或者提交,甚至把该项目删除重新check out,都会出现同样的问题;

这个时候查阅了一下资料得知:本地的SVN客户端中有一个嵌入式DB(里面大约有10多个表)SQLite,来保存SVN中管理的文件类型,项目结构树,用户操作进度等,所以我们可以大胆假设下,上述我们提交代码过程中,SVN客户端用户代码提交操作非正常的终止,导致sqlite中某个表中用来记录用户对项目A的操作(增删改等)的数据来不及更改,由于我们后续的所有针对项目A的操作,都优先从该表中检查项目A是否有未完成的操作,如果存在未完成操作就会提示"Previous operation has not finished",顺着这个思路,如果我们找到这个表,且把这个表中相关记录删除,是不是就可以解决这个问题,通过查阅相关资料发现:

在使用了svn的项目中,在项目根目录会有一个.svn文件夹,点击进入后结构如下:

就是箭头指向的这个文件,它就是SQLite数据库文件,我们可以用SQLite3.exe打开它,下面开始解决上述问题:

1、首先我们去https://www.sqlite.org/download.html 页面下,找到下载解压缩后,得到如下这么个目录,里面有个sqlite3.exe,我们就可以使用命令行的方式打开这个文件;

2、将sqlite3.exe复制到项目根目录中,通wc.db文件同目录,如下:

3、通过命令行切换到项目根目录,并彩种sqlite3 wc.db命令查看wc.db文件内容,.table命令查看wc.db中所有的表,其中WORK_QUEUE表就是用来记录用户操作如下:

命令解释:

sqlite3 wc.db:表示采用sqlite3工具打开wc.db文件,就像你使用microsoft office打开word文档一样

.table:可以认为wc.db是一个数据库文件,这个文件的本身就是一个微型数据库,.table命令表示查看这个微型数据库中的所有table

4、既然是表,那么我们可以采用sql执行增删改查就可以,在此处执行DELETE FROM WORD_QUEUE;命令执行删除;

5、4处操作完毕后,选中项目,执行svn的clean up操作,然后SVN项目可以正常使用了;

注:如果此时clean up仍然报错:

(1)我们可以输入以下命令,查看阻塞表内容:select * from work_queue;

(2)查看lock表内容:select * from wc_lock;

(3)输入命令 delete from work_queue;

(4)输入命令 delete from wc_lock;

然后重新启动项目,再次clean up;问题解决!

svn报错:[Previous operation has not finished; run 'cleanup' if it was interrupted] 的排错过程的更多相关文章

  1. SVN 报错“Previous operation has not finished; run 'cleanup' if it was interrupted” 原因及解决方案

    今天遇到的问题 svn无论是执行checkout,commit,update的时候提示需要cleap up,但 svn执行clean up命令时报错“Previous operation has no ...

  2. 与资源库同步时,我的svn报错 Previous operation has not finished; run 'cleanup' if it was interrupted

    解决办法:选择你的项目,右键,小组(Team),刷新或清理(Refresh or Clean)即可.

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

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

    从SVN上拉下来Document文档(word和excel),在本地修改后,准备通过TortoiseSVN提交,发现报错. Error: Previous operation has not fini ...

  5. SVN 操作报错 “Previous operation has not finished; run 'cleanup' if it was interrupted“

    今天在 通过 SVN 合并代码的时候报了如下的错误 ”Previous operation has not finished; run 'cleanup' if it was interrupted“ ...

  6. svn执行clean up 操作时报错 "Previous operation has not finished; run 'cleanup' if it was interrupted"解决如下!

    今天在项目中更新的时候,突然间爆了一个svn的这个错误,当时提示我去clean up操作,结果我执行clean up操作时候,还是报错,后来坚持出来,是因为ios项目中的一个图标出了问题,使svn进入 ...

  7. (转)svn执行clean up命令时报错“Previous operation has not finished; run 'cleanup' if it was interrupted”

    今天碰到了个郁闷的问题,svn执行clean up命令时报错“Previous operation has not finished; run 'cleanup' if it was interrup ...

  8. SVN异常,Previous operation has not finished; run 'cleanup' if it was interrupted

    SVN在提交.更新.cleanup时报错:Problem running logsvn: Failed to run the WC DB work queue associated with 'D:\ ...

  9. Eclipse 使用svn时出现 “Previous operation has not finished; run 'cleanup' if it was interrupted“问题

    在执行svn操作的时候出现了下面的问题 commit -m "" E:/eclipse/workplace/BRobotAPP/blockly/googleDemo/blockly ...

随机推荐

  1. 彻底搞懂etcd raft选举、数据同步

    etcd raft选举机制 etcd 是一个分布式的k/V存储系统.核心使用了RAFT分布式一致性协议.一致性这个概念,它是指多个服务器在状态达成一致,但是在一个分布式系统中,因为各种意外可能,有的服 ...

  2. 全程实操cdh5.14.4中集成安装kylin2.4.1与使用测试

    在cdh5.14.4安装完成并排错完成的情况下,进行如下kylin安装操作: 1.实验环境 三台CentOS 7主机,IP地址 192.168.43.129 cm1 192.168.43.130 cm ...

  3. redis AbortOnConnectFail

    AbortOnConnectFail =true 服务器上停止redis service,即便后来redis服务端修好能够接通时,也不会自动连接. 所以建议设为false

  4. 【转】Vue项目报错:Uncaught SyntaxError: Unexpected token <

    这篇文章主要介绍了Vue项目报错:Uncaught SyntaxError: Unexpected token <,在引入第三方依赖的 JS 文件时,遇到的一个问题,小编觉得挺不错的,现在分享给 ...

  5. gulp与webpack的区别?是一种工具吗?

    问:gulp和webpack什么关系,是一种东西吗?可以只用gulp,不用webpack吗 或者反过来?有什么区别? 答:gulp是工具链.自动化构建工具,可以配合各种插件,我们不用再做机械重复的工作 ...

  6. js对数组array的常见操作小结

    1.创建数组?两种方式 var arr = new Array("1","2","4"); var arr1 = ["1" ...

  7. HTTP 强制缓存和协商缓存

    Web 缓存能够减少延迟与网络阻塞,进而减少显示某个资源所用的时间.借助 HTTP 缓存,Web 站点变得更具有响应性. 缓存优点: 减少不必要的数据传输,节省带宽 减少服务器负担,提升网站性能 加快 ...

  8. [linux]查找最大的文件

    查找最大的日志文件,命令: find ./ -type f | xargs -I{} du -m {}|sort -rnk1|head -10 offline一台机器保留限产,其他机器删除日志,命令: ...

  9. prometheus学习系列十: Prometheus AlertManager配置文件说明

    alertmanager配置文件说明 alertmanager是通过命令行标记和配置文件配置的,命令行标记配置不可变的系统参数,配置文件定义抑制规则.通知路由和通知接收器.可以通过官方提供的routi ...

  10. linux开发中常用的命令及技巧(连载)

    1.在内核或uboot目录下搜索相关内容/文件名时:grep "USB" * -nR find -name "*USB*" 2.查看系统中设备 cat  /pr ...