右键单击Subversion工作目录文件夹,然后从上下文菜单中选择TortoiseSVN-> Clean Up . 这将通过您的工作目录递归并清除任何未完成的操作,删除 local 锁(这与使用Subversion锁定存储库中的文件不同,后者让每个人都知道锁) .
如果这不起作用,请查看是否可以找到已更改但尚未提交但保存的文件的名称,并重做结帐 .
-1
如果文件被您自己锁定(相同的svn帐户),您可以按照以下步骤操作:
右键单击锁定的文件或文件夹,然后选择 TortoiseSVN->Get lock... ,并选中“ [] Steal the locks " at the bottom left corner of the dialog, click "确定” . 如果成功完成,那没关系 . 当您再次右键单击该文件时,您可以看到 TortoiseSVN->Release lock... ,单击以解锁 .
svnadmin lslocks /root/of/repo
(in my case it was var/www/svn/[name of Company])
You can add a specific path to this by svnadmin lslocks /root/of/repo "path/to/file"
16 回答
右键单击Subversion工作目录文件夹,然后从上下文菜单中选择TortoiseSVN-> Clean Up . 这将通过您的工作目录递归并清除任何未完成的操作,删除 local 锁(这与使用Subversion锁定存储库中的文件不同,后者让每个人都知道锁) .
如果这不起作用,请查看是否可以找到已更改但尚未提交但保存的文件的名称,并重做结帐 .
如果文件被您自己锁定(相同的svn帐户),您可以按照以下步骤操作:
右键单击锁定的文件或文件夹,然后选择 TortoiseSVN->Get lock... ,并选中“ [] Steal the locks " at the bottom left corner of the dialog, click "确定” . 如果成功完成,那没关系 . 当您再次右键单击该文件时,您可以看到 TortoiseSVN->Release lock... ,单击以解锁 .
使用svn命令行解锁本地文件夹,只需使用
svn cleanup
.Before:
# svn commit -m "fixing #1234"
# svn st
# svn cleanup
After:
# svn st
# svn commit -m "fixing #1234"
对于仍然遇到此问题的任何人(错误:工作副本''已锁定 . ),我有您的解决方案:
我发现当其中一个TortoiseSVN窗口崩溃时,它会留下一个TSVNCache.exe,它仍然有一些处理你的工作副本,这会导致你看到的锁定问题(并且还会阻止Clean Up做它的工作) .
所以解决这个问题:
Either
1a)使用Process Explorer或类似工具删除TSVNCache.exe拥有的句柄
1b)..或者更简单,只需使用任务管理器杀死TSVNCache.exe
Then
2)右键单击 - > TortoiseSVN - >清理 . 只需要检查“清理工作副本状态” .
从那里,快乐更新/提交 . 您可以通过执行SVN更新来重现锁定行为,然后在更新完成之前快速终止它的TortoiseProc.exe进程 .
这是我第一次遇到这个问题 . 我甚至试图重启PC,没有效果 . 这解决了我的问题:
我的解决方案:
Right Click 关于项目工作目录 .
导航 TortoiseSVN .
导航至 Clean Up .
保留所有默认选项,并选中 Break Locks
点击 OK
这适合我 . 我能够提交更改 .
要从当前由其他用户锁定的命令提示符解锁工作副本中的文件,请使用
--force
选项 .$ svn unlock --force tree.jpg
我有这个问题,我已经完成了以下步骤来解决它:
转到父文件夹而不是子文件夹
选择SVN清理
单击“确定” .
在父文件夹而不是子文件夹上执行此步骤!
它对我有用!
我正在将文件夹上移一级并进入另一个文件夹 . 我的错误是从父文件夹中移动 .
不好的例子:
SVN需要使用已删除的文件夹信息更新父目录 .
您必须从源文件夹和目标文件夹的公共根目录执行此操作,或使用完整路径 .
好例子:
我有这个问题,我无法从客户端解锁文件 . 我决定去更加简单的服务器方面 .
在SVN服务器上:
找到锁
删除锁定
而已!
Solution :
右键单击项目工作目录 .
导航TortoiseSVN .
导航到清理 .
选择清理工作副本状态(选中标记)
单击“确定”
重复步骤1和2,然后导航以释放锁定 .
单击确定您的项目锁已打开 .
除了David M的回答,在做清理时 - >检查'破锁'选项 . 这将确保释放锁 . 然后做svn更新 . 这对我有用 .
解锁被阻止的文档:1 . 右键单击 - >锁定2.选中“窃取锁定”复选框2.释放锁定
我在这个问题上进行了很多研究但是在我尝试这个问题之前没有任何解决方
我的repo文件夹与Windows xp虚拟机共享,因此我从VM执行清理,然后从主机执行SVN UPDATE .
它对我有用 .
来自哥斯达黎加的问候 .
我有这种情况发生在龟龟腐败和崩溃之后试图更新文件夹 . 我最终重新安装了Tortoise,但鬼锁仍然存在 . 从那里我不得不删除该文件夹并进行新的结帐 . 很显然,我很幸运,当时我没有任何新的更改 . 无论如何,不是好消息,如果有人有更好的解决方案我会喜欢自己听 . 即使使用“Break Lock”即使用force选项解锁也没有改变任何东西 .
清理,检查所有复选框=>这项工作对我来说
我在这些操作后遇到了这个问题:
获取锁定文件夹
修改文件
删除文件并更新文件夹 - >下载新文件
尝试提交或释放锁定
我终于通过再次强制锁定来解决问题:TortoiseSVN - >获取锁定 - >检查“窃取锁定”然后提交或释放锁定 .