Perforce。在沙箱中获取文件状态
如何确定客户端中文件的状态,我想知道该文件是否需要更新,修补或者修改等。在CVS中,我以前只是运行" cvs -n -q update。> file "。稍后查找M,U,P,C属性以获取文件的当前状态。
在perforce中," p4 sync -n"不提供" cvs -n -q update"之类的输出。如果使用Perforce,如何查看文件的当前状态?
解决方案
回答
不太清楚你的意思。如果我们正在谈论查看哪些文件需要"解析"(使用perforce语言),则可以使用:
p4 resolve -n
请在此处查看p4命令行手册网站:
http://www.perforce.com/perforce/doc.current/manuals/cmdref/resolve.html#1040665
如果使用该客户端,P4V还具有突出显示未提交的文件和脏文件的功能。右键单击工作区视图中的设备,然后选择"协调脱机工作"。经过一些处理后,我们将获得与软件仓库不同步的文件列表。
希望这可以帮助。
回答
不确定这是否是我们要查找的内容,但是p4 diff命令有一些有用的选项。从用法上:
-sa Opened files that are different from the revision in the depot, or missing. -sb Opened for integrate files that have been resolved but have been modified after being resolved. -sd Unopened files that are missing on the client. -se Unopened files that are different from the revision in the depot. -sl Every unopened file, along with the status of 'same, 'diff', or 'missing' as compared to its revision in the depot. -sr Opened files that are the same as the revision in the depot.
回答
据我所知,没有命令可以为我们提供所需的确切信息。在查看update命令的功能时,Perforce中没有任何替代方法。我认为,最接近将是使用" p4 fstat"命令并从那里解析输出以获取所需的信息。
我们可能会发现此页面有帮助。
我还找到了指向p4wrapper的链接,该链接声称将CVS命令(包括更新)包装到脚本中。周围可能还会有其他类似的人。
我还想评论说,当问"我该怎么做..."时,这个问题的答案与Perforce一样。答案通常归结为编写脚本以获取perforce命令的输出以获得所需的结果。他们的理念是提供基本的命令,并让开发人员以基本功能为基础。爱它或者恨它,这是基本模型。在此处的Perforce公共仓库中可以找到许多好的脚本。