小编典典

我如何“git责备”删除的行?

all

git blame非常适合修改和添加的行,但是我如何才能找到存在于特定先前提交中的行最终被删除的时间。我在想bisect,但我希望有更方便的东西。

(在你问之前:在这种情况下,我只是做了 agit log -p并搜索了代码行,并且(a)某个白痴 刚刚
删除了上一次提交中的重要行,并且(b)我就是那个白痴。)


阅读 92

收藏
2022-03-08

共1个答案

小编典典

如果您知道该行的内容,这是一个理想的用例:

git log -S <string> path/to/file

它向您展示了引入或删除该字符串的实例的提交。还有-G<regex>which 对正则表达式做同样的事情!查看man git- log并搜索-Gand-S选项或 pickaxe(这些功能的友好名称)以获取更多信息。

-S选项实际上也在git-blame手册页的标题中提到,在描述部分中,它给出了一个使用git log -S....

2022-03-08