如何列出提交中更改的所有方法的签名?

时间:2015-03-23 12:20:03

标签: git methods diff commit

我需要列出提交中更改(更新,删除或添加)的所有方法的签名。

例如,this commit中更改的方法是:

  • br.ufrn.ase.Classe1.metodoB(int b)U
  • br.ufrn.ase.Classe1.getV()D
  • br.ufrn.ase.Classe1.metodoadicionado()A
  • br.ufrn.ase.Classe2.metodoQualquer(int i)A
  • br.ufrn.ase.Classe2.outro(int j)A

我如何制作这样的清单?如果我将blob内容传递给它,是否有一些工具可以完成这项工作?

我正在使用Java开发,但该工具不需要使用Java,我可以将其保存在文件中并传递给lib。

1 个答案:

答案 0 :(得分:0)

我设法通过使用git blame的输出,有问题的提交和他的父,来获取已修改的行号,然后我使用ASTParse(jdt)进行解析来计算哪些是每种方法的边界线。最后,我只是进行搜索,传递在每个方法范围内已更改的行数,并在特定提交中更改了方法。