我需要找到在我的客户端工作区中同步的最大更改列表,一个选项是使用
p4 changes -m 1 @client_name
但由于我的分支机构中存在大量文件,因此发布p4 changes
证明代价高昂,因此我需要一些有效的方法来解决这个问题。提前谢谢!
答案 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}}})然后过滤掉你自己的变化。