办公室一个妹纸在用svn的时候,删掉了一个目录,然后上传的时候出现错误,根据报错,度娘解释要用cleanup,但是cleanup不能用,妹纸从网上查到要用sqlite3连接wc.db,然后delete一下任务堆积,但是妹纸执行后没反应,于是妹纸就没招了
把我叫了过去,于是排障开始了。
根据报错
Cleanup failed to process the following paths: xxxxx
Previous operation has not finished; run 'cleanup' if it was interruppted.
Please execute the 'cleanup' command.
回到工位,我也进行了资料查找,果然,stackoverflow上面,对于这种cleanup,建议要清除.svn/wc.db里面的work_queue队列,后来看了看妹纸之所以没有成功,是因为妹纸压根没有分好,全靠度娘教的好,一个select 一个delete命令全写进去了,连个分号也没有,自然也就起不到作用了。
这个时候,我还写了个脚本:
# filename: svncheck.bat
# 以后妹纸直接运行这个就可以直接进行操作了
# 下面直接打 e:就可以直接进入e盘了,无需用cd命令
e:
cd xxx项目
cd .svn
$sqlite地址 wc.db
后续命令
select * from work_queue;
delete from work_queue;
这样做完之后,svn目录下面的一个小目录04我们先进性了update,成功。 但是对于05文件夹就还是不成功
failed to run the WCDB work queue associated with xx,重要的是, 文件名或者目录名不合法
# 后来注意到,里面居然有*号 我还专门做了测试,*号在windows里面命名文件或者目录是不可以的哦。
总结:
- soft - sqlite3 for windows
- soft - svn for windows
下载可以通过如下共享: http://pan.baidu.com/s/1kVbfzGr
或者: s.ops.ac.cn (做了dns 显性跳转)