给定函数名,添加该函数时如何在perforce中查找变更列表?

给定函数名,添加该函数时如何在perforce中查找变更列表?,perforce,Perforce,如果我有函数名和函数所在的文件,我正在寻找一种在perforce中查找变更列表的方法? 例如:如果“A.cpp”函数通过变更列表1234添加了“void b()” 我想通过只提供函数名或同时提供函数名和文件名来返回changelist1234。我正在考虑使用python脚本进行此操作,但不确定如何继续。使用p4注释,例如: p4 annotate -c A.cpp | grep "void b()" 查看p4 help annotate中可用的选项--您可以使用-I标志查找

如果我有函数名和函数所在的文件,我正在寻找一种在perforce中查找变更列表的方法? 例如:如果“A.cpp”函数通过变更列表1234添加了“void b()”


我想通过只提供函数名或同时提供函数名和文件名来返回changelist1234。我正在考虑使用python脚本进行此操作,但不确定如何继续。

使用
p4注释,例如:

p4 annotate -c A.cpp | grep "void b()"

查看
p4 help annotate
中可用的选项--您可以使用
-I
标志查找原始更改列表如果行是通过合并添加的,您可以使用
-a
标志查找文件早期版本中的文本,等等。

谢谢@Samwise,这解决了我正在寻找的问题,但只有在变更列表直接提交到该分支的情况下才能解决。如果函数通过集成到达我的分支,而原始CL位于另一个分支中,该怎么办?请查看
p4帮助注释
,了解可用的选项--如果行是通过合并添加的,您可以使用
-I
标志查找原始更改列表。非常感谢。再问一个问题,我想知道我是否可以直接在Depot中运行annotate,而不是在工作区中同步我的分支。可能吗?我使用的代码如下:>p4.run(“annotate”、“-I”、“DEPOT PATH | grep FUNCTION NAME”)出现以下错误:>“[警告]:文件不在客户端视图中。”