列出按p4中的待定更改列表分组的已打开文件

时间:2013-06-07 15:56:59

标签: bash cygwin perforce changelist

在Cygwin bash中,如何列出在当前工作空间中按挂起的更改列表分组的所有文件(忽略空的或搁置的更改列表)?

例如,如果我在以下更改列表中打开了以下文件,我希望以此(或类似)格式显示它:

1234: Changelist 1234's description
//path1/file1 1 add  text
//path2/file2 2 edit text

5678: Changelist 5678's description
//path2/file3 3 edit xbinary

p4 opened|sed "s/\([-#()]\|change\)/ /g"|column -t|sort -k 4根据更改列表编号对它们进行排序:

//path1/file1 1 add  1234 text
//path2/file2 2 edit 1234 text
//path2/file3 3 edit 5678 xbinary

但我希望将每个更改列表编号和描述视为标题。

2 个答案:

答案 0 :(得分:4)

最简单的方法是这样的:

p4 changes -s pending -c $P4CLIENT | awk '{print $2}' | p4 -x - describe -s

列出了当前客户端(即工作区)的所有待定更改,并调用了p4 describe -s

答案 1 :(得分:2)

这是我在.bashrc中的一段代码,用于创建一个p4pending别名来实现类似的目标。我使用'p4 changes'为每个更改列表生成标题,并使用'p4 opened -c'列出更改列表中打开的文件。这给了我与P4V相同的结果。

image.setScaleToFitHeight(false);