如何从两个版本之间的 Perforce diff 中获取 C/C++ 函数名
Posted
技术标签:
【中文标题】如何从两个版本之间的 Perforce diff 中获取 C/C++ 函数名【英文标题】:How to get C/C++ function name from Perforce diff between two version 【发布时间】:2017-12-20 05:33:07 【问题描述】:我正在尝试提取与执行修订文件之间的差异。但我的要求是提取被修改的函数名称。有没有办法找到改变的功能。
【问题讨论】:
Afaik perforce 无法为您做到这一点。获取两个版本并区分它们应该可以工作。 您可能必须实际“解析”(我使用相对宽松的术语)源文件才能做到这一点。获取整个源文件,从差异点向后扫描,直到找到函数声明。在这里,编码风格可能会对您有所帮助,因此您可以从“它从第 1 列开始并带有括号”中识别出一个函数,例如。 @Mats Petersson,谢谢。通过上述方式,我能够解析和提取功能更改。 【参考方案1】:使用匹配函数名称的正则表达式执行 p4 diff2
和 grep:
Regex to pull out C function prototype declarations?
【讨论】:
以上是关于如何从两个版本之间的 Perforce diff 中获取 C/C++ 函数名的主要内容,如果未能解决你的问题,请参考以下文章
如何获取待处理的 Perforce 更改列表中所有文件的差异?
Perforce:如何从分支操作之前获取“截至”日期或修订版本的文件?