【问题标题】:git history of a function with overloading具有重载的函数的 git 历史记录
【发布时间】:2023-03-22 14:34:01
【问题描述】:

通过 git 显示函数历史记录,我可以使用 git -L :functionName:fileName

但是对于诸如 C++ 之类的语言,函数重载允许多个函数具有相同的函数名称,例如,

int sum(int a,int b)
{
    return a+b;
}

double sum(double a,double b)
{
    return a+b;
}
float sum(float a,float b)
{
    return a+b;
}

如何显示一个特定的函数历史记录?

【问题讨论】:

    标签: git function methods overloading


    【解决方案1】:

    来自git doc

    -L ,: -L ::
    ....

    如果“:<funcname>” 代替 and ,它是一个 表示从第一个 funcname 行开始的范围的正则表达式 匹配 <funcname>,直到下一个 funcname 行。 “:<funcname>” 从前一个 -L 范围的末尾开始搜索,如果有的话,否则从 文件的开头。 “^:<funcname>” 从文件开头搜索。

    :function 是一个正则表达式,它将匹配函数与模式function 并跟踪它的历史。

    所以要跟踪特定的功能,只需修改模式使其更清晰。

    例如要跟踪double sum(double a,double b),只需使用git log -L :sum\(double:filepath

    【讨论】:

      猜你喜欢
      • 2019-05-05
      • 2020-05-30
      • 1970-01-01
      • 2014-01-12
      • 1970-01-01
      • 2020-12-01
      • 1970-01-01
      • 2015-06-04
      • 1970-01-01
      相关资源
      最近更新 更多