Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么我总是得到';SVN:工作副本XXXX已锁定;尝试执行';清理';?_Java_Eclipse_Svn_Eclipse Plugin_Subclipse - Fatal编程技术网

Java 为什么我总是得到';SVN:工作副本XXXX已锁定;尝试执行';清理';?

Java 为什么我总是得到';SVN:工作副本XXXX已锁定;尝试执行';清理';?,java,eclipse,svn,eclipse-plugin,subclipse,Java,Eclipse,Svn,Eclipse Plugin,Subclipse,如果您以前在Eclipse(Subversion,subversive)中使用过SVN工具,那么您可能熟悉“工作副本”XXX“锁定…”错误 我在以下网站上找到了一篇非常有用的文章,其中提供了解决此问题的方法: 尽管解决方法很好,但一次又一次地做是一件痛苦的事情。有人知道我为什么会不断出现这种错误,以及我可以采取什么措施来防止它吗 上下文:我正在创建一个涉及监听SVN事件的Eclipse插件,因此在测试该插件时,我会不断打开和关闭工作区。我通常在每次打开工作区时都会进行1到2次提交。每次提交都会失

如果您以前在Eclipse(Subversion,subversive)中使用过SVN工具,那么您可能熟悉“工作副本”XXX“锁定…”错误

我在以下网站上找到了一篇非常有用的文章,其中提供了解决此问题的方法:

尽管解决方法很好,但一次又一次地做是一件痛苦的事情。有人知道我为什么会不断出现这种错误,以及我可以采取什么措施来防止它吗

上下文:我正在创建一个涉及监听SVN事件的Eclipse插件,因此在测试该插件时,我会不断打开和关闭工作区。我通常在每次打开工作区时都会进行1到2次提交。每次提交都会失败,并出现“工作副本锁定”错误。我希望这个错误不再发生e、 因此,任何建议都将不胜感激


谢谢!

我以前在SVN方面遇到过很多问题,有一件事确实给我带来了问题,那就是在Eclipse之外修改文件或手动删除文件夹(其中包含.SVN文件夹),这可能给我带来了最大的麻烦

编辑
您还应注意不要中断SVN操作,尽管有时可能会发生错误,这可能会导致
.lock
文件无法删除,从而导致您的错误。

通常会创建一个
.lock
文件,它决定锁定/解锁状态,检查此文件的存在。我认为如果删除此
.lock
只有文件,那么问题就会消失。

经过更多的探索和测试,这个问题似乎是由调试插件和使用断点引起的。SVN/Subclipse显然不喜欢在执行中途有断点,因此创建了这个锁文件。我刚开始运行时g插件,这个问题消失了。

我在使用
com.xxx.service.model
包时遇到了同样的问题

为了修复它,我首先备份了模型包中的代码更改。然后删除了模型包并与存储库同步。它将显示整个文件夹/包。然后更新了我的代码


最后,将旧代码提交粘贴到SVN存储库。效果很好。

当我从另一个subversion项目复制目录并尝试提交时,发生了这种情况。解决方法是删除我想要提交的目录中的.SVN控制器

  • 选择项目
  • 右键单击所选项目
  • 团队->清理
  • 问题解决了


    注意:以上步骤仅适用于Eclipse(Indigo软件包)

    当您删除/移动文件时,这种类型的问题可能会发生-本质上是对目录结构进行更改。Subversion只检查已添加到Subversion的文件中所做的更改,而不是对目录结构所做的更改。与其使用操作系统的copy etc命令,不如使用svn copy etc。请参阅


    此外,在提交更改时,svn首先存储“摘要”“待办事项列表中的更改列表。”。在执行此待办事项列表中的svn操作时,它会锁定文件,以防止在执行这些svn操作时发生其他更改。如果svn操作中途中断,例如由于崩溃,文件将保持锁定状态,直到svn可以完成todo列表中的操作。可以使用svn cleanup命令“重新激活”。请参见

    确保完全清除控制台上的内容。例如,如果子文件夹(包)被锁定:

       svn: E155004: Commit failed (details follow):
      svn: E155004: Working copy 'C:\Users\laura\workspace\tparser\src\de\test\order' locked
      svn: E155004: 'C:\Users\laura\workspace\tparser\src\de\test\order' is already locked.
    
    清理C:/Users/liparulol/workspace/tparser/src/de/mc/etn/parsers/order


    然后需要清理指定的文件夹,而不是整个项目。如果您在eclipse中,请右键单击软件包,而不是项目文件夹,然后执行清理。

    当项目中的某个文件夹出现问题时,会发生这种情况。 您需要找到锁定的确切文件夹,并在特定文件夹下执行
    svn cleanup
    。 您可以通过以下方式解决此问题:

  • 运行
    svn commit
    命令找出哪个文件夹出错
  • 将目录更改为该文件夹并运行
    svn cleanup
    。然后就完成了
  • 解决方案: 第1步:必须删除“.svn”隐藏文件下的“锁定”文件。 步骤2:如果没有“锁定”文件,您将看到“we.db”,您必须打开此数据库,并且需要单独从下表中删除内容 锁定 –wc_锁 第三步:清理项目 第4步:立即尝试提交。
    步骤5:完成。

    以下操作应解锁锁定的工作副本(在svn客户端版本1.6.11和elipse版本:Mars.2发行版(4.5.2)上测试)

    步骤1:(转到工作拷贝目录)$cd工作拷贝目录

    步骤2:(连接到svn sqlite数据库)$sqlite3.svn/wc.db

    步骤3:(从表WC_LOCK中删除所有记录)sqlite>从WC_LOCK中删除

    步骤4:(断开与sqlite 3数据库的连接)sqlite>ctrl+d


    步骤5:(来自eclipse)右键单击您的工作副本,然后单击Team->Refresh/Cleanup

    我不在计算机旁测试它。。但是
    svn cleanup
    是否也解决了这个问题?我知道我通常只是删除.lock文件:为什么它会被锁定?我从来没有要求它被锁定,我认为我与Eclipse或subversion的交互不保证它被锁定。此外,在团队选项下,还有锁定和解锁选项。在此错误期间,锁定选项处于启用状态,而解锁选项处于禁用状态。SVN清理也会失败。这似乎不是解决这个问题的方法。@Treebranch它可能是因为我上面提到的原因之一而锁定的。而且@Daniel也是一个很好的例子point@KennyCason如果可行的话,应该这样做@Treebranch我认为当它开始提交时,它会创建这个文件,然后在提交为comp时删除它