-n
用作 grep 参数来显示行号,但-H
不适用于文件名。我认为这是因为git diff
默认情况下不会为每个更改的行输出文件名。当我打字时,我考虑了另一个显示多行的选项,它解决了我眼前的问题,但仍然想知道显示实际文件名的解决方案。
[michael@bigbox www]$ git diff | grep -n -H "this->config"
(standard input):614:- $config=json_decode($this->config,true);
[michael@bigbox www]$
答案1
我不确定您是否可以在单个命令中显示文件名和更改的行,但以下内容将列出包含this->config
已更改的行的所有文件:
git diff --name-only -G"this->config"