是否有一个简单的git命令来列出其差异包含给定字符串的文件,还是我必须进行迭代?
我需要与其他更改分开提交重构(方法名称更改),因此我需要确定其差异包含新方法名称的文件。
答案 0 :(得分:2)
您可以使用-S
命令的-G
(字符串)或diff
(正则表达式)参数来过滤特定的字符串。
git diff --name-only -S"your_method_name"
只有该特定字符串出现在更改中的文件才会显示在列表中。
在the doc中查看这里:
-S<string>
寻找差异来更改文件中指定字符串(即加/删除)的出现次数。旨在供脚本编写者使用。
当您正在寻找确切的代码块(如结构),并且想知道该块自诞生以来的历史记录时,它很有用:迭代使用该功能将有趣的块馈入将preimage重新放回-S,并继续进行直到获得该块的第一个版本为止。