问题描述

之前为了图方便,在eclipse中直接把三个jsp文件复制到了eclipse中我新建的一个文件夹中,把svn版本号信息也带过来了,然后我又删除了这三个jsp文件,接着先把这三个jsp复制到桌面,然后在从桌面复制到eclipse中我新建的文件夹中,这时是没有svn版本号信息了,但是在"与资源库同步"后提交的时候出现了问题:

svn报如下错误:

我尝试在eclipse中删除这个文件夹也删不了,报错:

接着尝试直接在工作空间的目录里删除这个文件夹,但是还是有问题:

如图所示,这个红圈中的文件就是我删除的文件,与资源库同步后的结果,这时我去提交或更新还是会报错:Attempted to lock an already-locked dir

解决问题

继续实践,后来在网上看到了这个:

然后我就先把文件恢复成了这个蓝色加号的状态,然后先进行了提交操作,之后虽然蓝色加号消失了,但是在与资源库同步之后还是有问题:

出现了这种情况,又提示更新又提示提交的,继续解决问题,最终方法,其实只需要把工作空间里对应目录的.svn文件夹里的lock文件删除就行:

我连同产生的错误日志文件一同干掉了,eclipse中的svn插件终于正常了。

问题总结

org.tigris.subversion.javahl.ClientException: Attempted to lock an already-locked dir
svn: Working copy 'D:\wangbo\album2\WebRoot\pages\shareProduct' locked

"svn客户端异常:试图锁定一个已经锁定的目录"

根据提示能够想到,要提交代码的时候,SVN 所做的工作中有一个操作步骤是"锁定",所以才会有"Attempted to lock "这一步,至于"an already-locked dir",就是说当前资源已经是锁定状态了,所以无法再次锁定。按说按照提示"尝试锁定一个已经被锁定的目录",就像"你去把门锁上,其实门就是锁上的",这一命令就没法执行了。应该只要 "release lock"就可以再次进行锁定了。然而并非如此,原因就是:此 lock 非彼 lock !你在右键 SVN 菜单中能找到所有 " [ * ] lock" 命令都是对 SVN 仓库所做的操作,不信你试试,都会让你填操作说明的,说明这是对仓库资源有改变(这里的lock是指在代码库中标记为锁定状态,不允许更改);我们这里的锁定只是在一次代码提交阶段暂时性"锁定",等提交操作完成了就取消锁了,是为了保证在提交过程中不被更改(提交代码需要网络通信,如果网络质量不好就比较耗时,你可能在此过程中对正在提交的代码更改),所以只要 cleanup 上次的锁定就可以了。

解决方法

一、右键选择 Team > Refresh/Cleanup ,再进行提交操作(前提是具备有效的SVN仓库连接)就可以了。

二、还有一种方法就是我自己用的了,直接删除lock文件就可以了(参考我上面的描述)。

最新文章

  1. 深入理解 Android 之 View 的绘制流程
  2. Java工程师成神之路
  3. js实现div居中
  4. 响应式图片srcset学习
  5. flask-admin章节一:使用chartkick画报表
  6. hdu 4114(状压dp)
  7. vc6开发ActiveX并发布全攻略(三)(转)
  8. EXEL表格读取 按键精灵
  9. javascript之css常用属性
  10. 理解SQL Server中索引的概念
  11. 数组序列的capacity及size函数
  12. js 各进制前缀 及 转换
  13. Problem J: 求个最大值
  14. go Mutex (互斥锁)和RWMutex(读写锁)
  15. ckeditor,关于数据回显
  16. python练习四—简单的聊天软件
  17. flutter开发vscode用模拟器调试
  18. 卷积的三种模式:full, same, valid
  19. Python基础(十二) 类私有成员和保护成员
  20. NSObject

热门文章

  1. Tornado创建一个web服务
  2. handsontable 常用 配置项 笔记
  3. Layui 写一个简单的后台页面
  4. dos命令 创建数据库,建表,两表联查,三表联查(mysql---第一篇)
  5. Numpy 矩阵库(Matrix)
  6. tomcat 请求处理流程分析(基于nio)
  7. 详解js跨域
  8. VB编程中的“Abs”是什么意思?
  9. IMPLEMENTATION - Entity Framework Anti Pattern - High Performance EF
  10. Android端高性能图像分类解决方案