svn: E155004: ..(资源路径)..已被锁定

45

当我尝试向存储库提交更改时,出现了错误。我确定我的资源(类)没有被锁定,但仍然出现错误:

Some resources were not updated.
svn: E155004: Working copy 'D:\svnworkspace\crm\weblayer\com\lmkr\crm\web\model\dashboard' locked
svn: E155004: 'D:\svnworkspace\crm' is already locked
15个回答

104

更新并清理您的工作副本。

svn update
svn cleanup
如果其他方法都不起作用,将更改保存为补丁(TortoiseSVNCreate patch...svn diff > changes.diff),然后重新检出存储库。您可以将补丁应用到新的工作副本(TortoiseSVNApply patch...svn patch changes.diff)。

谢谢您的回复。我已经解决了,svn服务没有运行。#太遗憾了 - Ruben
你提供的链接中,“To remove the locks and recursively clean up the working copy, use svn update.”这句话是打错了吗?它不应该是“svn cleanup”吗?当我执行“svn update”时,它抱怨锁定问题,所以“svn update”不能是解决方案,甚至不是其中的一部分。 - Bill Woodger
1
@BillWoodger 尝试任何 svn updatesvn cleanup 的组合。如果这样做不起作用,请删除并重新创建工作副本。如果您想保留未提交的更改,请在执行操作前创建补丁。 - Markus Jarderot
谢谢,昨天它起作用了(忘记点赞了,所以现在点了)。我只是不明白为什么文档中在那个地方说“svn update”,而描述的是“svn cleanup”的功能,就我所知 :-) - Bill Woodger
谢谢。对我有用。 :) - SuRa

23

解决方案:

步骤1:必须删除“.svn”隐藏文件下的“lock”文件。

步骤2:如果没有“lock”文件,则会看到“we.db”,您需要打开此数据库,并仅从以下表中删除内容

– lock

– wc_lock

步骤3:清理您的项目

步骤4:现在尝试提交。

步骤5:完成。


2
非常感谢,这对我很有帮助。需要在我的Mac上使用“http://sqlitebrowser.org/”修改SQLite数据库。 - patriziotomato
3
对我来说,文件是wc.db。清理锁和wc_lock起作用了! - Amit
4
只是提供命令以防万一 - [C:\sw\sqlite>sqlite3.exe C:\workspace\project1.svn\wc.db "select from wc_lock"],然后执行此命令 [C:\sw\sqlite>sqlite3.exe C:\workspace\project1.svn\wc.db "delete from wc_lock"]。 - street hawk

13

对于我来说,在Eclipse中起作用:

团队 -> 清理


6
这发生在切换中。在开始之前关闭eclipse。 这是我遵循的步骤,可以解决问题并对我有效。
版本:
  • Eclipse Version:Version: 2018-12 (4.10.0)

  • SQLLite version: DB.Browser.for.SQLite-3.11.2-win64

步骤:
  1. 下载 - https://sqlitebrowser.org/dl/ 我下载了zip版本。
  2. 解压缩已下载的zip文件。
  3. 打开 "DB Browser for SQLite"
  4. 找到您的 .svn 文件夹 - C:\Workspace-Eorder\myNCR_Release_5.0.0.0.svn\
  5. 打开“wc”文件。
  6. 转到 SQL 查询浏览器:
  7. 选择 from wc_lock; --- 如果锁定,则会得到一些行。
  8. 删除 from wc_lock
  9. 关闭并保存更改。
屏幕截图: enter image description here

4

如果还是不起作用,只需锁定所有文件并解锁。 现在再次清理一下,它就会起作用。

svn更新 svn清理


3

//在文件夹内执行以下操作:

svn cleanup

svn update

//如果出现冲突:

svn revert --depth infinity conflicted_filename

svn update conflicted_filename

svn update


3

我遇到了同样的问题。

问题在于,在Subversion 1.7中,这种方法不再起作用。好消息是,有一种更好的方法可以解决这个问题 - 而且似乎我一直应该使用这种方法。你只需要:

svn cleanup

我在这里找到了解决方案(链接)


2
在文件夹内部
TortoiseSVN -> 清理...

1
我们遇到了相同的问题,解决方法如下: 我们尝试从另一个文件夹进行“从SVN还原”,而不是从遇到问题的文件夹中进行, 突然间,我们能够从有问题的文件夹中执行提交、还原等操作。 似乎它首先需要从另一个目录提交更改。
敬礼。

1

只是清理一下。在JetBrains PhpStorm中发生了这种情况。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接