当我尝试更新或提交项目中的代码时,它告诉我该文件夹已锁定。当我尝试“释放锁定”时,它说在这个工作空间中没有什么可以解锁的。
这意味着什么?为什么我不能更新、提交甚至清理项目。
当我尝试更新或提交项目中的代码时,它告诉我该文件夹已锁定。当我尝试“释放锁定”时,它说在这个工作空间中没有什么可以解锁的。
这意味着什么?为什么我不能更新、提交甚至清理项目。
右键单击您的 Subversion 工作目录文件夹,然后从上下文菜单中选择TortoiseSVN->Clean Up 。这将通过您的工作目录递归并清除任何不完整的操作,删除本地锁(这与使用 Subversion 锁定存储库中的文件不同,让每个人都知道锁)。
如果这不起作用,请查看是否可以找到已更改但尚未提交的文件的名称,保存它们,然后重新签出。
如果文件被自己锁定(相同的svn帐户),您可以按照以下步骤操作:
右击被锁定的文件或文件夹,选择TortoiseSVN->Get lock...,勾选对话框左下角的“ [] Steal the locks ”,点击“OK”。如果它成功完成,那没关系。再次右键该文件,可以看到 TortoiseSVN->Release lock...,点击解锁。
使用 svn 命令行解锁本地文件夹,只需使用svn cleanup
.
前:
# svn commit -m "fixing #1234"
# svn st
# svn cleanup
后:
# svn st
# svn commit -m "fixing #1234"
对于仍然遇到此问题的任何人(错误:工作副本“{DIR}”已锁定。),我有您的解决方案:
我发现当一个 TortoiseSVN 窗口崩溃时,它会留下一个 TSVNCache.exe,它仍然有一些处理您的工作副本的句柄,这会导致您看到的锁定问题(并且还会阻止清理工作)。
所以要解决这个问题:
任何一个
1a) 使用 Process Explorer 或类似工具删除 TSVNCache.exe 拥有的句柄
1b) ..或者更简单,只需使用任务管理器杀死 TSVNCache.exe
然后
2)右键单击-> TortoiseSVN-> 清理。只需要检查“清理工作副本状态”。
从那里开始,快乐的更新/提交。您可以通过执行 SVN 更新来重现锁定行为,然后在更新完成之前快速杀死它的 TortoiseProc.exe 进程。
这是我第一次遇到这个问题。我什至尝试重新启动PC,但没有效果。这解决了我的问题:
我的解决方案:
这对我有用。我能够提交更改。
要从命令提示符解锁当前被其他用户锁定的工作副本中的文件,请使用--force
option。
$ svn unlock --force tree.jpg
我遇到了这个问题,我已经完成了以下步骤来解决它:
在父文件夹而不是子文件夹上执行此步骤!
它对我有用!
我正在将一个文件夹向上移动一个级别并进入另一个文件夹。我的错误是从父文件夹中进行移动。
不好的例子:
pwd -> C:\Repo\ParentDir\
svn move ./DirtoCopy ../AnotherDir
SVN 需要使用已删除的文件夹信息更新父目录。
您必须从源文件夹和目标文件夹的公共根目录执行此操作,或者使用完整路径。
好例子:
svn move C:\Repo\ParentDir\DirtoCopy C:\Repo\NewLocation
要解锁被阻止的文档: 1. 右键单击 -> 锁定 2. 选中“窃取锁定”复选框 2. 解除锁定
我遇到了无法从客户端解锁文件的问题。我决定去更简单的服务器端。
在 SVN 服务器上:
定位锁
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"
解除锁定
svnadmin rmlocks /root/of/repo “path/to/file”
就是这样!
解决方案 :
除了 David M 的回答之外,在进行清理时 -> 检查 'break locks' 选项。这将确保释放锁。然后做svn更新。这对我有用。
我对此问题进行了很多研究,但在我尝试以下方法之前没有解决方案可以解决我的问题:
我的 repo 文件夹与 Windows xp 虚拟机共享,因此我从 VM 执行清理,然后从主机执行 SVN UPDATE。
它对我有用。
来自哥斯达黎加的问候。
通过重命名文件夹以使文件夹路径更小,我能够在我的机器上解决此问题。
我遇到了类似的问题,它告诉我某些文件已被xx锁定。但是,xx 说他有释放锁,他在 TortoiseSVN 上找不到锁。
clean up
对我不起作用。我得问他去TortoiseSVN -> Repo-browser
,找到对应的文件,然后右键这些文件,选择break lock
。
我在尝试更新文件夹时让 Tortoise 损坏并崩溃后发生了这种情况。我最终重新安装了 Tortoise,但幽灵锁仍然存在。从那里我不得不删除文件夹并重新结帐。显然,我真的很幸运,当时我没有任何新的更改要提交。无论如何,这不是好消息,如果有人有更好的解决方案,我很想亲自听到。即使使用“Break Lock”,即使用强制选项解锁也没有改变任何东西。
清理,选中所有复选框 => 这对我有用
在这些操作之后我遇到了这个问题:
我终于通过再次强制锁定解决了这个问题: TortoiseSVN --> 获取锁定 --> 检查“窃取锁定”然后提交或释放锁定。