作者:朱金灿

来源:http://blog.csdn.net/clever101

 

        某个开发人员对一个文件使用svn工具进行get lock操作后,其它人只有等这个人release lock之后才能进行编辑提交。但在某些特殊情况 下,假使这位开发人员不在,就需要对已经锁定的文件进行强制解锁了。使用svnadmin lslocks命令可以列出当前被锁定的文件,语法为 svnadmin lslocks REPOS_PATH。


         强制解锁的做法有两种:一是使用svnadmin rmlocks对文件进行解锁,语法 为:svnadmin rmlocks REPOS_PATH LOCKED_PATH,比如:svnadmin rmlocks MyApp /src /tree.jpg。使用svnadmin lslocks命令和svnadmin rmlocks命令之前需要切换到svn代码仓库根目录,如 E:\Repository。

 

         但是使用svnadmin rmlocks一次只能对一个文件解锁。要对所有的文件进行解锁,可以是到svn代码仓库文件夹下,找到目录下的db文件夹, 在db文件有一个locks文件夹,把locks文件夹里的所有子文件夹都删掉。然后在客户端就可以提交了,提交时可能提示需要先对文件夹进行 Clean up,Clean up之后就可以提交了。

 

参考文献:

 

1.svnadmin lslocks

 

2.svnadmin rmlocks

 

3.关于svn 锁定的问题