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

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

当我清理的时候,我得到

处理失败 以下路径:XXXXXXXX

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


当前回答

在对项目结构进行更改时,首先可以通过使用svn copy和svn move etc命令来避免这类问题。请记住,svn只检查已经添加到subversion的文件中的更改,而不检查物理目录结构的更改。请参阅http://svnbook.red-bean.com/en/1.7/svn.tour.cycle.html

此外,在提交更改时,svn首先在todo列表中存储更改的“摘要”。在执行此todo列表中的svn操作时,它会锁定该文件,以防止在执行这些svn操作时发生其他更改。如果svn的操作中途中断,比如崩溃,文件将保持锁定状态,直到svn完成todo列表中的操作。可以使用svn cleanup命令“重新激活”。请参阅http://svnbook.red-bean.com/en/1.7/svn.tour.cleanup.html

其他回答

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

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

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

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

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

今天我经历了以上问题说

Svn:执行' Svn cleanup'命令移除锁(输入' Svn help cleanup') 详细信息)

这就是我的解决方案,开始工作了

关闭Xcode IDE,我试图从那里提交更改。 在Mac上——>进入终端——>输入下面的命令

svn cleanup <我的svn项目代码>的目录路径

例子:

svn净化/Users/Ramdhan/SVN_Repo/项目

按回车键并等待清理完成。 进入XCode IDE和清洁和构建项目 现在我可以提交我的所有更改,并采取更新以及。

希望这能有所帮助。

如果你在Linux上,试试这个:

find "/the/path/to/your/directory" -name .svn -type d | xargs chmod 0777 -R

然后在该目录上运行清理命令,然后尝试更新。

对我来说,诀窍是在我的工作副本顶部运行svn cleanup,而不是在问题发生之前我一直在工作的文件夹中运行。