git - 在 Git 存储库中查找代码被删除的位置

标签 git

如何找到已删除的代码?

我最终找到了它的创建位置:

$ 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/

相关文章:

ios - Xcode、GitHub 和第三方框架

linux - Git 更新后 Hook 作为部署管理。就像heroku一样

Git 大提交最佳实践

git - .tmux.conf : update status commands on panel focus

git - 正在进行中。无法提交。如何进行或停止(abort)?

git index.lock 当我尝试提交时文件存在,但无法删除该文件

git - 拿一个当前的 Git 分支和 "reset"它的内容来掌握

git - 用于将项目/更改/提交传输到单独计算机上的离线存储库的裸 git 存储库的工作流程和设置?

git - 如何使用多个 ssh key

Git错误权限被拒绝(公钥),无法粘贴公钥