如何从另一个文件中找到Git函数的调用?

时间:2014-06-03 15:13:12

标签: c# git

我在Git有一个项目。在我的代码中,在过去的某个时刻,我删除了对公共函数的调用。我想知道何时删除了对此函数的调用,以及为什么。因为函数调用与函数定义位于不同的文件中,所以我不能简单地查看定义函数的文件的文件历史记录。有没有一种简单的方法来查找包含函数调用的文件?

我会试着说明一下:

File: MyFuncCall.cs //older version

    public void Foo()
    {
        //do something ...
    }

File: ???.cs //older version

    public void Bar()
    {
        new MyFuncCall().Foo();
        //do something else...
    }

在一些提交之后,代码现在看起来像:

File: MyFuncCall.cs //newer version

    public void Foo()
    {
        //do something ...
    }

File: ???.cs //newer version

    public void Bar()
    {
        //no more call to function
        //do something else...
    }

在这个插图中,我想知道???。cs是什么。

1 个答案:

答案 0 :(得分:4)

它被称为日志" pickaxe" (git log):

git log -Sfunction

最旧的将是您的代码中引入该功能的提交 下一个可以删除它。

请参阅" How to grep git commits for a certain word":它与git log --grep=function不同,后者在提交消息中出现问题。