版权声明:本文为【欧阳鹏】原创文章,欢迎转载,转载请注明出处! 【http://blog.csdn.net/ouyang_peng】

目录(?)[+]

错误描述

这里写图片描述 
在Android Studio中点击VCS向下箭头使用SVN Update功能更新代码的时候,报错如下所示:

这里写图片描述

错误描述信息:

Error:svn: E155037: Previous operation has not finished; run 'cleanup' if it was interrupted
  • 1

如错误描述提示我Cleanup,于是我尝试 VCS -> Cleanup Project进行Cleanup操作

这里写图片描述

可是我Cleanup失败,失败提示如下所示:

这里写图片描述

错误描述信息:

Error:Error performing cleanup for 'D:\BBK_SVN\I3_Trunk': svn: E155009: Failed to run the WC DB work queue associated with 'D:\BBK_SVN\I3_Trunk', work item 3685 (file-install sync/maven_pom.properties 1 0 1 1) svn: E720005: Can't move 'D:\BBK_SVN\I3_Trunk\.svn\tmp\svn-F2531208' to 'D:\BBK_SVN\I3_Trunk\sync\maven_pom.properties': �ܾ����ʡ�
  • 1
  • 2

我以为是Android Studio的CVS插件出问题了,于是进入到项目地址用TortoiseSVN( 小乌龟)去直接操作。 
这里写图片描述 
这里写图片描述
这里写图片描述

好吧,一样还是不能解决此问题。只能去google如何解决此问题了。

解决方法

步骤一、清空svn的队列

1、进入到项目的.svn目录中,查看是否存在wc.db文件

C:\Users\Administrator>D:  D:\>cd D:\BBK_SVN\I3_Trunk  D:\BBK_SVN\I3_Trunk>cd .svn  D:\BBK_SVN\I3_Trunk\.svn>dir  Volume in drive D has no label.  Volume Serial Number is 0005-0E52   Directory of D:\BBK_SVN\I3_Trunk\.svn  2016/10/24  15:21                 3 entries 2016/10/24  15:21                 3 format 2016/10/24  15:22    <DIR>          pristine 2016/11/08  14:56    <DIR>          tmp 2016/11/08  14:56         2,846,720 wc.db 2016/11/08  14:56                 0 wc.db-journal                4 File(s)      2,846,726 bytes                2 Dir(s)  55,646,486,528 bytes free
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

这里写图片描述

2、执行sqlite3命令查看wc.db数据库的内容

C:\Users\Administrator>D:  D:\>cd D:\BBK_SVN\I3_Trunk  D:\BBK_SVN\I3_Trunk>sqlite3 .svn/wc.db "select * from work_queue" 3685|(file-install sync/maven_pom.properties 1 0 1 1) 3686|(file-install sync/src/main/aidl/com/xtc/sync/IConnectionService.aidl 1 0 1 1) 3687|(file-install sync/src/main/aidl/com/xtc/sync/IReadDataCallback.aidl 1 0 1 1)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

这里写图片描述

通过sqlite3命令可以看到wc.db中的work_queue表中有多条数据。

3、清空work_queue表数据,然后查看是否清楚完毕

D:\BBK_SVN\I3_Trunk>sqlite3 .svn/wc.db "select * from work_queue" 3685|(file-install sync/maven_pom.properties 1 0 1 1) 3686|(file-install sync/src/main/aidl/com/xtc/sync/IConnectionService.aidl 1 0 1 1) 3687|(file-install sync/src/main/aidl/com/xtc/sync/IReadDataCallback.aidl 1 0 1 1)  D:\BBK_SVN\I3_Trunk>sqlite3 .svn/wc.db "delete from work_queue"  D:\BBK_SVN\I3_Trunk>sqlite3 .svn/wc.db "select * from work_queue"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

这里写图片描述

上面的所有命令如下所示:

Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporation.  All rights reserved.  C:\Users\Administrator>D:  D:\>cd D:\BBK_SVN\I3_Trunk  D:\BBK_SVN\I3_Trunk>sqlite3 .svn/wc.db "select * from work_queue" 3685|(file-install sync/maven_pom.properties 1 0 1 1) 3686|(file-install sync/src/main/aidl/com/xtc/sync/IConnectionService.aidl 1 0 1 1) 3687|(file-install sync/src/main/aidl/com/xtc/sync/IReadDataCallback.aidl 1 0 1 1)  D:\BBK_SVN\I3_Trunk>sqlite3 .svn/wc.db "delete from work_queue"  D:\BBK_SVN\I3_Trunk>sqlite3 .svn/wc.db "select * from work_queue"  D:\BBK_SVN\I3_Trunk>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

这里写图片描述

4、清空wc_lock表数据

有时候只是清空work_queue表数据不行,还得清空wc_lock表数据,才能cleanup成功

D:\BBK_SVN\I3_Trunk\.svn>sqlite3 wc.db "delete from wc_lock"
  • 1

这里写图片描述

步骤二、运行 Cleanup命令

再运行 Cleanup命令之后,弹出如下所示的界面,则可以正常的进行Cleanup操作了。

这里写图片描述

这里写图片描述

或者直接在Android Studio里 VCS -> Cleanup Project进行Cleanup操作。

这里写图片描述

步骤三、运行 SVN Update命令

成功Cleanup之后在运行SVN Update即可更新成功,如下所示: 
这里写图片描述 
或者在Android Studio中点击向下的箭头 进行 Update操作 
这里写图片描述

更新成功后的提示: 
这里写图片描述

作者:欧阳鹏 欢迎转载,与人分享是进步的源泉! 
转载请保留原文地址:http://blog.csdn.net/ouyang_peng/article/details/53027992