如何确定客户端中文件的状态,我想知道文件是否需要更新、修补或修改等。在 CVS 中,我曾经简单地运行“cvs -n -q update.> file ”。稍后查找 M,U,P,C 属性以获取文件的当前状态。
在 perforce 中,“p4 sync -n”不会像“cvs -n -q update”那样给出输出。在 Perforce 的情况下,我如何查看文件的当前状态?
如何确定客户端中文件的状态,我想知道文件是否需要更新、修补或修改等。在 CVS 中,我曾经简单地运行“cvs -n -q update.> file ”。稍后查找 M,U,P,C 属性以获取文件的当前状态。
在 perforce 中,“p4 sync -n”不会像“cvs -n -q update”那样给出输出。在 Perforce 的情况下,我如何查看文件的当前状态?
据我所知,没有一个命令可以准确地给你你想要的东西。在查看更新命令的作用时,Perforce 中没有单一的替代方法。我认为您最接近的将是使用“p4 fstat”命令并从那里解析输出以获取您需要的信息。
您可能会发现此页面很有帮助。
我还发现这个链接指向一个 p4wrapper,它声称将 CVS 命令(包括更新)包装到一个脚本中。周围可能还有其他类似的。
我还想评论说,当问“我该怎么做......”时,这个问题的答案就像 Perforce 的许多人一样。答案通常归结为编写脚本以获取 perforce 命令的输出以获得所需的结果。他们的理念是提供简单的命令并让开发人员构建基本功能。爱它或恨它,这是基本模式。可以在此处的 Perforce Public Depot 中找到许多好的脚本。
不确定这是否是您要查找的内容,但 p4 diff 命令有一些有用的选项。从用法上看:
-sa 打开的文件与修订版本不同 在仓库,或失踪。 -sb 为已解析的集成文件打开 但解决后已修改。 -sd 客户端上缺少的未打开文件。 -se 与修订版不同的未打开文件 在仓库。 -sl 每个未打开的文件,连同文件的状态 与其相比,“相同”、“差异”或“缺失” 在仓库中进行修订。 -sr 打开的文件与 仓库。
全面披露:我为 Perforce 工作
在即将发布的 2012.1 版本中将有 2 个新命令“p4 status”和“p4 reconcile”。有关详细信息,请参阅以下内容:
http://www.perforce.com/blog/120126/new-20121-p4reconcile-p4status
不太清楚你的意思。如果您正在谈论查看哪些文件需要“解析”(使用 perforce 语言),那么您可以使用:
p4 resolve -n
请参阅此处的 p4 命令行手册网站: http ://www.perforce.com/perforce/doc.current/manuals/cmdref/resolve.html#1040665
如果您使用该客户端,P4V 还有一个很好的功能可以突出显示未提交和脏文件。右键单击工作区视图中的文件夹,然后选择“协调脱机工作”。经过一些处理后,您将获得与软件仓库不同步的文件列表。
希望这可以帮助。