根据Subversion文档:
提交完成后,svn status显示工作副本中不再存在锁定令牌.这是svn commit的标准行为 - 它搜索工作副本(或目标列表,如果您提供此类列表)以进行本地修改,并将此步骤中遇到的所有锁定令牌作为提交事务的一部分发送到服务器.提交成功完成后,即使在未提交的文件上,也会释放所有提到的存储库锁.这是为了阻止用户对锁定或长时间握持锁定的邋.
在尝试确保此功能正常工作时,我在尝试提交在我的工作副本中具有锁定的文件更改时不断收到此消息:
svn: Cannot verify lock on path '/test/test'; no matching lock-token available
现在,我已经在Windows上的两个不同的工作副本中测试了这个场景,并且在RHEL上测试了一次,并且每次都有新的签出错误,并且没有事先锁定文件.如果我解锁文件然后提交,没问题,提交就会发生.如果我使用svn:needs-lock属性,如果在解锁文件之前尝试提交,则会出现相同的错误.
我很确定客户端没有发生错误,但是在服务器端.我认为可能是客户端没有将本地授权令牌传递回Subversion服务器.但是,我已经尝试过三个不同的客户端(2个CLI和Subclipse).因为它失败了三个不同的客户端,我觉得客户端正在将本地授权令牌传递回服务器.所以我很确定服务器是我需要解决的地方,但在哪里?
svn ×1