Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Perforce 如何删除具有挂起更改列表的Performce客户端_Perforce - Fatal编程技术网

Perforce 如何删除具有挂起更改列表的Performce客户端

Perforce 如何删除具有挂起更改列表的Performce客户端,perforce,Perforce,我在perforce中有一个工作区,其中一些文件被标记为删除。现在我想强制删除该工作区 但我没有管理员权限。如何实现此目的?运行p4 opened查看所有打开的文件,然后运行p4 revert将其还原 然后运行p4 changes-c您的客户机名称-s pending查看所有挂起的变更列表。因为在第一步中,您恢复了所有打开的文件,所以这些更改列表将全部为空。运行p4 change-d change number删除每个空的挂起变更列表 然后,您可以运行p4 client-d来删除您的客户端。为什

我在perforce中有一个工作区,其中一些文件被标记为删除。现在我想强制删除该工作区


但我没有管理员权限。如何实现此目的?

运行
p4 opened
查看所有打开的文件,然后运行
p4 revert
将其还原

然后运行
p4 changes-c您的客户机名称-s pending
查看所有挂起的变更列表。因为在第一步中,您恢复了所有打开的文件,所以这些更改列表将全部为空。运行
p4 change-d change number
删除每个空的挂起变更列表


然后,您可以运行
p4 client-d
来删除您的客户端。

为什么在P4V中,通过任意顺序的菜单项只需点击11次

  • 右键单击变更列表
  • 删除搁置的文件
  • “是的”
  • 右键单击变更列表
  • 删除所有作业
  • 右键单击变更列表
  • 还原文件
  • “回复”
  • 右键单击变更列表
  • 删除挂起的更改列表
  • “是的”

  • 让我们将Perforce发送到可用性学校。

    以下是我清空默认更改集所做的操作,其中有许多文件已签出进行编辑:

     p4 opened | sed 's/#.*$//g' |  xargs -iF p4 revert F
    

    这将从
    p4 opened
    生成的文件名中切断注释部分,并将文件名通过管道传送到
    p4 revert
    。在此之后,我没有任何挂起的内容,
    p4更改-c我的客户机名称-s挂起
    不会产生任何内容。如果您有一个巨大的更改集,这将需要一段时间。

    这里有一个用于删除Performce客户端的脚本化过程。小心使用:这将删除您在客户端上正在进行的所有工作

  • 还原此客户端上所有更改的文件

    p4-c$CLIENT revert-k/。。。
    
    注意使用了
    -k
    选项,该选项“将文件标记为在服务器元数据中还原,而不更改客户端工作区中的文件”。因为我们稍后将删除客户端,所以我们不关心更新客户端工作区。如果打开了许多文件,这会加快速度

  • 从与客户端关联的挂起更改中删除所有搁置的文件

    p4变更-s搁置-c$CLIENT | cut-d'-f2|
    读变时;p4是否搁置-c$CHANGE-d/。。。;完成
    
    如果您从未使用过
    p4 shelve
    ,则可以省略此步骤

  • 与客户端关联的所有挂起的更改现在都为空。删除它们

    p4变更-s待定-c$CLIENT | cut-d'-f2 | p4-b1-x-change-d
    
  • 现在没有与客户端关联的挂起更改。删除客户端

    p4客户端-d$client
    

  • (这个过程应该容易得多!特别是,我们似乎没有理由在删除客户机之前删除与客户机关联的搁置文件。如果您发现自己在这方面遇到困难,请联系Performce支持部门并建议简化。)编写了名为的脚本,用于删除p4客户端(存在变更列表和其他问题)。
    它具有以下特点:

    • 自动删除变更列表(恢复挂起并删除搁置)
    • 修复主机名(如果与创建客户端的主机名不同)
    • 如果已锁定,则解锁客户端
    • 删除客户端
    • 删除关联文件(可以配置为不从参数中删除)
    请注意,该脚本依赖于中的其他脚本

    尝试以下步骤:

  • 1.右键单击变更列表

  • 选择“更改所有权”

  • 在“工作空间”框中,选择“已存在的工作空间”,然后单击“确定”

  • 右键单击变更列表并选择删除,然后单击确定

  • 这对我在P4V中重置默认变更列表非常有效:

  • 右键单击默认变更列表并选择“编辑挂起” 更改列表“默认值”

  • 单击右下角的按钮“另存为编号变更列表”

  • 右键单击新变更列表并选择“删除变更列表XXX”


  • 您还可以右键单击新更改列表,以还原文件,以执行您需要执行的任何操作,这在默认更改列表上不可用。

    在删除更改列表之前,需要还原所有文件

    通过p4v(2013.4版)执行两个步骤:

  • 还原所有文件

    右键单击挂起的更改列表,然后选择“还原文件”

  • 删除更改列表

    右键单击变更列表,然后选择“删除挂起的变更列表‘XXXXXX’”


  • 对于恢复和删除挂起的变更列表,我更喜欢以下顺序:
    p4 changes-u joe
    列出我的挂起的变更列表
    p4 revert-c 12345/…
    还原挂起的变更列表12345中的所有文件(例如)<代码>p4更改-d 12345删除现在为空的更改列表。HTH.@Jeffro您的解决方案,
    p4 revert-c CLN/…
    节省了我一个接一个地还原打开的文件的时间。另请参见带有搁置文件的变更列表。此处不需要
    xargs
    (尤其不需要
    -i
    选项,即使在Linux上也不可移植和不推荐)。改用
    p4-x-
    (请参阅
    p4帮助用法
    )。另外,为了避免在有大量更改集时等待,请使用
    -k
    选项
    p4 revert
    。p4 opened不一定会显示所有挂起的更改。您可能需要使用changes命令来查看它们。这回答了一个不同的场景,然后在文章中描述,您希望还原默认变更列表中的文件(没有问题)-这篇文章讨论的是您试图提交的状态-遇到错误-然后Perforce会将您的所有文件重定向到更改列表,即使您从未请求过更改列表。因此,在您的情况下,您需要做的就是还原您的所有文件