当我做svn更新时,我得到这个错误:

工作副本XXXXXXXX锁定请 执行“清理”命令

当我清理的时候,我得到

处理失败 以下路径:XXXXXXXX

我怎样才能跳出这个循环呢?


当前回答

SVN通常在从存储库获取实际文件之前更新文件夹中文件的内部结构(. SVN /prop-base)。一旦获取文件,这将被清除。在更新过程中,由于“更新”失败或过早取消,通常会抛出错误。

检查.svn/prop-base目录下列出的文件 删除任何不在文件夹下的文件 清理 更新

现在更新应该可以工作了。

其他回答

首先尝试了许多解决方案,然后我只是删除了我有问题的文件夹。

然后执行SVN Update。

这对我很管用。

我不推荐这种方法,但除了这种方法,其他方法都不起作用。:(

查看您的.svn文件夹,其中将有一个名为lock的文件。删除该文件,您将能够更新。每个子目录的.svn目录下可能存在较多的锁文件。它们也需要删除。这可以作为批处理从命令行非常简单地完成,例如。

find . -name 'lock' -exec rm -v {} \;

注意,您正在手动编辑.svn文件夹中的文件。他们被放在那里是有原因的。这个理由可能是错误的,但如果不是的话,你可能会破坏你的本地副本。

来源:http://www.svnforum.org/2017/viewtopic.php?p=6068

工作中的一位同事经常看到这条消息,对他来说,这是因为他删除了一个在SVN版本控制下的目录,而没有从SVN中删除它,然后在其不受版本控制的位置创建了一个同名的新目录。

如果这是你的问题……

有不同的方法来修复它,这取决于如何/为什么替换目录。

无论哪种方式,你都可能需要:

A)将现有目录重命名为临时名称

B)通过SVN还原恢复从文件系统中删除的目录,但不从SVN中删除

从那里开始,你可以选择

A)将相关文件复制到被删除的目录中

B)如果目录中的内容发生了重大变化,请对原始目录进行SVN删除,提交,并将新目录重命名为所需的名称,然后进行SVN添加以使该目录处于版本控制之下。

确切地说,这里没有列出这个答案:我的解决方案是关闭我的IDE(在本例中是Netbeans)。似乎IDE已经锁定了该文件。

如果您在Windows机器上,通过浏览器查看存储库,您可能会看到两个具有相同文件名但使用不同大小写的文件。Subversion是区分大小写的,而Windows不是,所以当Windows认为它正在拉下同一个文件而Subversion没有时,您可以获得一个锁。请删除存储库中重复的文件名,然后重试。