如何找到已删除的代码?
我最终找到了它的创建位置:
$ git log --pretty=oneline -S'some code'
这就足够了,但我也很好奇它被删除的位置,到目前为止,还没有。
首先,我尝试了 git diff HEAD..HEAD^ | grep 'some code'
,每次都扩大范围,直到我找到它被删除的行。很好,假设我在 HEAD^^..HEAD^^^
范围内找到它,然后我执行 git show HEAD^^^
和 git show HEAD^ ^
用grep
,但是找不到代码!
然后我阅读了一些关于 git bisect
的内容,果然,它给了我一个单一的修订,其中罪魁祸首应该是......再次,git show rev | grep 'some code'
出现空...
我做错了什么?
最佳答案
git log -S<string>
完成这项工作,但如果您需要进行更复杂的搜索,您可以使用 git log -G<regex>
.
来自man
:
-G<regex>
Look for differences whose patch text contains added/removed lines that match
<regex>
.
关于git - 在 Git 存储库中查找代码被删除的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1528513/