错误描述
在Android Studio中点击VCS向下箭头使用SVN Update功能更新代码的时候,报错如下所示:
错误描述信息:
Error:svn: E155037: Previous operation has not finished; run 'cleanup' if it was interrupted
如错误描述提示我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': �ܾ����ʡ�
我以为是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)
通过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"
上面的所有命令如下所示:
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"
步骤二、运行 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