我想搜索包含字符串" hello world"的提交。或者在文件中包含该短语的任何提交。
git log -SHello World
无法正常工作
git log -S'Hello World'
无法正常工作
git log -S"hello world"
无法正常工作
我一直在使用:git log -i --grep='hello world'
但是这个只适用于提交消息。
答案 0 :(得分:5)
pickaxe搜索(git log -S
)会在提交中查找单词的添加或删除(不 in提交消息)
请参阅comment on this answer。
如果你有一个包含该词的提交消息,但提交内容本身没有" hello world
&#34;由于已添加或已删除(例如,它已经存在,来自之前的提交),该提交将不报告。< / p>
除此之外,git log -S 'This repos'
或git log -S'This repos'
应该可以正常使用。
答案 1 :(得分:0)
我想搜索包含字符串&#34; hello world&#34;的提交。
要搜索提交非常简单:
git log | grep "new image"
或在文件中包含该短语的任何提交。 为此,您需要循环每次提交,检查它,然后搜索给出字符串。
对于此类任务,您需要使用git filter-branch ...
# you will need something like:
git filter-branch --tree-filter "
find .
-type f
-exec grep -rnw '/path/to/somewhere/' -e "pattern""
答案 2 :(得分:0)
命令git log "-Shello world"
怎么样?