svn加锁,尤其是非共享锁的情况下,会发生被自己锁定或者锁定人不在公司的情况。这个时候就需要用到强制解锁了。
使用svnadmin lslocks命令可以列出当前被锁定的文件,语法为svnadmin lslocks REPOS_PATH。
1. 强制解锁的做法有两种:一是使用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之后就可以提交了。