Tob*_*len 6 workspace perforce
我正在尝试从perforce安装中删除旧用户.之前的管理员已经删除了所有活动工作区/客户端,因此我们现在应该可以删除用户,但是当我运行时
p4 user -f -d auser
User auser has file(s) open on 1 client(s) and can't be deleted.
Run Code Online (Sandbox Code Playgroud)
但是,auser不再具有任何关联的客户端,如果我在P4V中过滤挂起的更改列表视图,则会向用户显示在默认更改列表中检出一个文件但未指定客户端.即使我以用户身份登录,我似乎也无法恢复或对文件执行任何操作.有什么提示我可以解决这个问题吗?
虽然这两个命令都没有返回:
$ p4 clients -u <USER>
$ p4 changes -s pending -u <USER>
Run Code Online (Sandbox Code Playgroud)
此命令显示我打开了哪个文件:
$ p4 opened -u <USER>
//depot/path/to/file#1 - edit default change (text) by <USER>@<CLIENT>
Run Code Online (Sandbox Code Playgroud)
此命令不起作用:
$ p4 -u <USER> -H <CLIENT> revert -k //depot/path/to/file
//depot/path/to/file#1 - belongs to user <USER>, not reverted
Run Code Online (Sandbox Code Playgroud)
删除客户端会:
$ p4 client -o <CLIENT> > <CLIENT>.txt
$ p4 client -d -f <CLIENT>
$ p4 opened -u <USER>
File(s) not opened anywhere.
Run Code Online (Sandbox Code Playgroud)
FTW!\ O /
如果需要,您可以使用以下命令重新创建客户端:
$ p4 client
Run Code Online (Sandbox Code Playgroud)
然后读入<CLIENT>.txt您使用输出创建的文件p4 client -o <CLIENT>并保存.
更多信息:http: //answers.perforce.com/articles/KB_Article/Reverting-Another-User-s-Files
解决了。
有点奇怪,但这就是我所做的。我获得了包含该文件的默认更改列表的详细信息。它有工作区名称,即机器的名称。我登录到机器,然后以用户身份登录到 perforce。此时,我可以看到待处理的更改列表并恢复文件。现在我可以删除该用户了。
这怎么发生的?
我认为发生的事情一定是客户感到困惑。不久前,我更改了该计算机(其构建服务器)上相当多客户端的所有者,其中一些客户端必须为旧用户打开了文件。这是我能想到的唯一解释。