在GIT中,我想找到一些文本已经改变的提交,但我只想搜索特定的提交。我试过了:
git log -S<my-search-text> <commit-hash1> <commit-hash2> <commit-hash3>
我想要搜索的提交不是范围。有谁知道如何做到这一点,还是有其他选择?
答案 0 :(得分:1)
您可以尝试使用所需的哈希值来点击git log
的输出:
git log -S<my-search-text> |grep -E '<commit-hash1>|<commit-hash2>|<commit-hash3>'
请注意,您必须使用正则表达式,因此-E
(您也可以使用egrep),并且必须对管道进行转义,因此您必须在引号内使用它们,或者{{{ 1}}。另一种语法是:
\|
根据您对此功能的使用情况,您可能有兴趣使用git log -S <my-search-text> |grep <commit-hash1> -e <commit-hash2> -e <commit-hash3>
和git diff
:
grep
这将显示提交范围内发生的每个更改,其中包含搜索文本。