我遇到这种情况
当我尝试运行p4 edit <file>
时,它说
- can't edit (already opened on this client)
但是,当我运行p4 opened <file>
(带有-a
和-x
选项)时,它说
- - file(s) not opened on this client.
我现在处于这种边缘状态。
我该如何解决?到底发生了什么?
答案 0 :(得分:2)
首先-仔细检查您从问题中删除的所有文件路径是否彼此真正匹配。出现此错误的合法方法是,如果您要编辑已在同一路径下的 local 路径下打开的 depot 文件,客户端(因为您先打开它,然后更改了客户端视图),并且您尝试通过“新”本地路径重新打开相同的软件仓库文件,而该文件在先前位置中仍有待处理的更改。确保在p4 opened <file>
错误返回的确切的仓库路径上运行p4 revert <file>
和can't edit
。
一旦消除:
通常不应该出现此错误,这是Perforce服务器中内部数据库不一致的症状-仓库文件记录为在db.locks表中在客户端上打开,但是在相应的客户端文件上打开不在db.working表中。
最简单的解决方法是让管理员在服务器根目录上运行p4d -xf 925
;这是一个修复命令,用于查找此确切的不一致情况,应该通过删去不匹配的db.locks条目来修复它。
p4d -xx
也将对其进行修复(此命令将扫描一组不同的不一致之处,并写入日志补丁文件来修复它们)。