在p4更改cmd之外的客户端工作空间中查找最大更改列表

时间:2014-01-25 06:36:25

标签: perforce

我需要找到在我的客户端工作区中同步的最大更改列表,一个选项是使用

p4 changes -m 1 @client_name

但由于我的分支机构中存在大量文件,因此发布p4 changes证明代价高昂,因此我需要一些有效的方法来解决这个问题。提前谢谢!

1 个答案:

答案 0 :(得分:3)

你的问题并不在于你正在使用p4 changes,而是你正在以一种非常低效的方式使用它。如果您转到客户端的根目录并询问它是否已同步到该目录树中的最新更改,则速度非常快:

$ time p4 changes -m 1 ...#have
Change 2559333 on 2014/01/25 by joe@some-client

real    0m0.209s
user    0m0.010s
sys     0m0.020s

将其与:

进行比较
$ time p4 changes -m 1 @my-perforce-client
Change 2559333 on 2014/01/25 by joe@some-client

real    1m57.943s
user    0m0.010s
sys     0m0.020s

请注意,p4 changes -m 1 ...#have并不会始终显示客户端同步的最后一次更改;它会显示客户的最后一次更改。例如,如果您的客户端已同步更改123但您稍后提交了更改456,则p4 changes -m 1 ...#have将报告更改456.要解决此问题,通常建议使用p4 changes -m 10 ...#have(或足够高{{} 1}}})然后过滤掉你自己的变化。