如何在两个时间戳期间查找perforce depot文件夹中的所有签入

时间:2011-04-21 23:38:18

标签: version-control perforce p4v

我正在使用命令行和p4v。 我需要找到所有签到两个时间戳(或时间)之间文件夹的签到。

任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:16)

这可以使用P4V或P4命令行应用程序完成。无论哪种方式,您都需要了解使用Perforce File Specifications的一些复杂性。特别针对您的要求,我们将使用@ yyyy / mm / dd格式指定检查文件的日期范围。

首先,我只需输入p4 changes即可显示当前客户端规范的所有更改列表:

C:\Project>p4 changes
Change 5 on 2011/03/16 by goyuix@laptop 'Initial commit for upgrade to .'
Change 4 on 2010/07/02 by goyuix@desktop 'fixed a bug for really bad reco'
Change 3 on 2010/04/19 by goyuix@desktop 'deleted project.dll from the sourc'
Change 2 on 2010/04/19 by goyuix@desktop 'deletion of library.dll '
Change 1 on 2010/04/18 by goyuix@desktop 'Initial commit '

如您所见,我有五个更改列表及其日期。如果我想限制它,我会使用日期文件规范修改p4 changes命令,如下所示:

C:\Project>p4 changes //depot/Project/MAIN/*@2010/01/01,@2010/12/31
Change 1 on 2010/04/18 by goyuix@desktop 'Initial commit '

这告诉我一些事情:首先,我使用了*通配符,它​​只检查指定文件夹的内容 - 没有子节点。如果您需要递归查看,请使用...规范而不是*。另外,我通过用逗号分隔开始日期和结束日期给出了日期范围,附加在文件规范的末尾。此命令的输出告诉我,在2010年期间,只有更改列表1实际上对此文件夹中的任何文件进行了更改。

要使用P4V做同样的事情,你可以在两个不同的视图中看到它。简单的方法是使用Depot或Workspace视图简单导航到相关文件夹,然后打开History选项卡(单击看起来像时钟的图标)。更改列表通常按日期排序,但如果不是,则只需单击列标题即可调整排序顺序并直观地检查给定的日期范围。

使用Time Lapse视图有点令人费解 - 但也会为您提供更精确的视图。打开P4V,导航到要检查使用“库”或“工作区”视图的历史记录的文件夹,然后右键单击该文件夹。在弹出菜单中选择Revision Graph,打开后,下拉Tools菜单并选择Time Lapse View。

在Time Lapse窗口中,您可以选择模式(选择多个修订版本)和内容范围(选择日期范围)。这可以让您直观地识别相关文件。

答案 1 :(得分:12)

尝试

p4 changes //depot_name/my_folder/...@2011/02/01,2011/03/01获取2011年2月1日至2011年3月1日期间my_folder文件夹中的所有更改。如果您需要在2011年2月1日和最新修订版之间使用@now代替2011/03/01。对于日期,您还可以按照 hh:mm:ss 的格式输入时间,以便p4 changes //depot_name/my_folder/...@2011/02/01:03:22:50,2011/03/01:04:05:06仅查看2011年2月1日上午3:22:50和3月01日之间的日期,2011年4:05:06

答案 2 :(得分:0)

不确定修订范围是否确实适用于视图,而不是您指明的特定文件。其中一个最直观的用途是获得一系列更改列表:

p4 changes //view/...@1210,@1200

您可能希望获得10个或更少的变更清单报告,但您得到的不是全部或全部。这是我的客户端版本,不确定他们是否将其与后续版本一起修复。

Perforce - 快速软件配置管理系统。 版权所有1995-2010 Perforce Software。版权所有。 Rev. P4 / NTX86 / 2010.1 / 265509(2010/09/24)。