我正在开发一个应该与Perforce集成的应用程序。在基本Perforce命令的学习阶段,我有一个关于'p4如何改变'工作的问题。提交更改列表后,例如,影响
上的文件
- '//仓库/网络/内容/的main.css'
- '//仓库/工具/应用程序/ init.py'
醇>
如果我们现在发出命令:
'p4更改// depot / Web /...'
然后更改列表将显示在结果中。那么Perforce如何管理这些信息呢?它是否打破了路径和存储?或者它是否进行在线子串查询?
我看到Perforce数据库架构中有一个字段“common path”,在这种情况下,值应为:
“//仓库/...'
所以在这种情况下,Perforce如何获取信息?
答案 0 :(得分:2)
对于每次更改,Perforce服务器都会记录受该更改影响的文件。
这是关于更改列表的许多元数据之一,它们记录在服务器的数据库中。
“p4 describe”等命令使用该信息来查找正确的文件集。
Perforce服务器包含一个复杂的模式匹配引擎,可以快速搜索数据库,找到影响某组文件的更改集,如文件模式所述。
这是服务器的核心操作,因此针对此行为进行了高度优化。