如何搞定SVN目录的cleanup问题和lock问题

今天上午在使用TortoiseSVN的时候碰到一个问题,就是操作时由于粗心大意,在更新的过程中点击取消,使得该目录出现cleanup的操作提示。

然后按照提示进行cleanup操作后,又提示目录被lock

然后上网各种搜索,弄了一个小时才解决,所以在这里记录一下(因为不是第一次遇到这个问题了,以前都是直接把文件删除再重新从SVN检出,不过有一有二这次又第三次出了同样的问题,所以就不能再犯懒了,万一还有第四次QAQ)

现在说一下我的解决方法:

1、下载安装sqlite

下载地址:http://www.sqlite.org/download.html

然后解压缩到D:\Program Files\sqlite文件夹

 

配置环境变量path后面加上D:\Program Files\sqlite(注意,如果环境变量path后面没有分号“;”,就在原来的环境变量path后面加上“;D:\Program Files\sqlite”)。PS:如果不会配置环境变量path,自行百度

2、将sqlite3.exe放到.svn目录下

在SVN目录下找到 .svn 隐藏目录,一般是在项目的根目录下。

然后把D:\Program Files\sqlite文件夹下面的sqlite3.exe放到.svn目录下

3、启动命令行

win+R,然后输入cmd,点击确定;

然后依次输入以下命令(前两条命令是进入到.svn目录下,此处就不写了,不会写的参考下面的图片);

sqlite3.exe wc.db          进入到sqlite的命令行环境,可以操作该数据库了;

.tables                           将该数据库中的表都显示出来,我们需要关注的是wc_lock和work_queue,因为关于操作的cleanup和lock的信息是保存在这两个表里;

select * from wc_lock    查看表中的信息是否为之前操作对应的文件或目录,如果这两张表存在数据那么svn就无法进行后续的操作;

解决方案:

很简单,你只要把这2张表清空即可,命令很简单:

delete from wc_lock;

delete from work_queue;

PS:参考链接

  http://blog.csdn.net/luochao_tj/article/details/46358145

     http://www.cnblogs.com/xcsn/p/6050878.html

 

posted @ 2017-11-30 16:43  小二柯  阅读(3597)  评论(0编辑  收藏  举报