如何删除正在等待更改列表的perforce客户端

我在perforce中有一个工作区,我在其中创build了一些文件标记以进行删除。 现在我想强制删除该工作区。

但是我没有pipe理员权限。 我怎样才能做到这一点?

运行p4 opened查看所有打开的文件,然后运行p4 revert以还原它们。

然后运行p4 changes -c your-client-name -s pending以查看所有待p4 changes -c your-client-name -s pending更改列表。 由于在第一步你恢复了所有打开的文件,这些修改表都将是空的。 运行p4 change -d change-number删除每个空的未决p4 change -d change-number列表。

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

为什么只有11个点击P4V,通过任意顺序的菜单项。

  1. 右键单击更改列表
  2. 删除搁置的文件
  3. '是'
  4. 右键单击更改列表
  5. 删除所有的工作
  6. 右键单击更改列表
  7. 恢复文件
  8. '还原'
  9. 右键单击更改列表
  10. 删除挂起的更改列表
  11. '是'

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

这是我做了什么来清空我的默认更改集,其中有很多文件检出编辑:

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

这将从由p4 openedp4 opened生成的文件名切断注释部分,并将文件名传送到p4 revert 。 之后,我什么也没有挂起和p4 changes -c my-client-name -s pending什么也没有。 如果你有一个巨大的变化,这将需要一段时间。

以下是删除Perforce客户端的脚本化过程。 小心使用:这会删除客户端上正在进行的所有工作!

  1. 恢复此客户端上的所有更改的文件。

     p4 -c $CLIENT revert -k //... 

    请注意使用-k选项,该选项“将文件标记为已在服务器元数据中恢复,而不更改客户端工作区中的文件”。 由于我们稍后要删除客户端,我们不关心更新客户端工作区。 如果您打开了许多文件,这会加快速度。

  2. 从与客户端关联的未决更改中删除所有已搁置的文件。

     p4 changes -s shelved -c $CLIENT | cut -d' ' -f2 | while read CHANGE; do p4 shelve -c $CHANGE -d //...; done 

    如果你从来没有使用p4 shelve你可以省略这一步。

  3. 所有与客户端相关的挂起更改现在都是空的。 删除它们。

     p4 changes -s pending -c $CLIENT | cut -d' ' -f2 | p4 -b 1 -x - change -d 
  4. 现在没有与客户端相关的未决更改。 删除客户端。

     p4 client -d $CLIENT 

(这个过程应该容易得多!尤其是,在删除客户端之前,我们不得不删除与客户端关联的搁置文件,没有什么好的理由。如果您发现自己正在为此苦苦挣扎,请联系Perforce支持,并build议您变得更简单了。)

写了这个脚本叫做p4-delete-client,用于删除一个p4客户端(它有更改列表和其他问题)。
它具有以下特点:

  • 自动删除更改列表(还原待处理和删除搁置)
  • 修复主机名(如果不同于创build客户端的话)
  • 解锁客户端,如果locking
  • 删除客户端
  • 删除关联的文件(可以configuration不从参数)

请注意,该脚本依赖于回购中的其他脚本。

尝试以下步骤:

  1. 1.右键单击更改列表

  2. select“更改所有权”

  3. 在工作区框中select已有的工作区,然后单击确定

  4. 右键单击更改列表并select删除而不是确定。

在P4V中,这对我来说很重要,用于重置默认更改列表:

  1. 右键单击默认更改列表,然后select“编辑挂起更改列表”默认“”

  2. 点击右下angular的“保存为编号更改列表”

  3. 右键单击新的更改列表并select“删除更改列表XXX”

您也可以右键单击新的更改列表以恢复文件,无论您需要做什么,这在默认更改列表中都不可用。

所有的文件需要恢复之前,可以删除更改列表。

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

  1. 恢复所有文件。

    Right click the pending changelist, and then choose "Revert Files"

  2. 删除更改列表。

    Right click the changelist, and then choose "Delete Pending Changelist 'XXXXXX'"