2

我正在开发一个应该与 Perforce 集成的应用程序。在基本 Perforce 命令的学习阶段,我有一个关于“p4 更改”如何工作的问题。一旦更改列表被提交,比如说,影响文件

  1. '//仓库/Web/content/main.css'
  2. '//仓库/工具/app/init.py'

如果我们现在发出命令:

'p4 更改 //depot/Web/...'

然后更改列表将显示在结果中。那么 Perforce 是如何管理这些信息的呢?它会分解路径并存储吗?或者它是否进行在线子字符串查询?

我看到 Perforce 数据库模式中有一个字段“公共路径”,在这种情况下,值应该是:

'//仓库/...'

那么在这种情况下,Perforce 是如何获取信息的呢?

4

1 回答 1

2

对于每个更改,Perforce 服务器都会记录哪些文件受到该更改的影响。

这是记录在服务器数据库中的有关更改列表的许多元数据之一。

该信息被诸如“p4 describe”之类的命令用来查找正确的文件集。

Perforce 服务器包含一个复杂的模式匹配引擎,它可以快速搜索数据库以定位影响特定文件集的更改集,如文件模式所述。

这是服务器的核心操作,因此针对此行为进行了高度优化。

于 2012-09-01T14:47:46.330 回答