在git-diff中有类似diff --show-c-function的东西吗?

时间:2013-05-13 15:23:48

标签: diff git-diff

我一直在我的git存储库中处理一个文件。如果我有一个原始git版本的文件的副本,我可以运行diff --show-c-function来获得2个文件的比较,其中(理论上)它显示了所有已经存在的函数改变。这对于解决我对文件的具体操作非常有用,在编写我需要的注释时。

但是在git-diff中,缺少此选项。有没有办法使这项工作(或者我不得不在我提交之前得到2份文件,git-diff响应稍微复杂)?

2 个答案:

答案 0 :(得分:8)

git help diff显示此选项:

-W, --function-context
        Show whole surrounding functions of changes.

所以,看起来git diff -W应该做你想做的事。

答案 1 :(得分:0)

请注意,GNU diff的--show-c-function选项并没有显示更改(hunk)所在的C函数的文本,它只显示了hunk标题中的函数名称(在@@ .. @@文字之后。

默认情况下,git在其差异中执行相同的操作(至少从1.9开始),并且它还可以通过core.attributesfile文件进行配置。