是否有一种简单的方法可以找出某个功能何时停止使用?我发现有太多次我认为我正在使用的功能,但似乎没有任何东西可以调用它,这让我想知道我何时以及为什么这样做。
答案 0 :(得分:4)
来自git log --help
:
-S<串GT;
查找改变文件中指定字符串出现次数(即添加/删除)的差异。用于脚本编写者的使用。
当你正在寻找一个确切的代码块(比如一个结构体)时,它很有用,并且想要知道该块首次出现以来的历史:迭代地使用该特征来提供有趣的块。 preimage回到 -S,并继续,直到你得到块的第一个版本。
这显示了每次提交的diff补丁。行开头的+
(突出显示为绿色)是添加的行。行开头的-
(突出显示为红色)是已删除的行。
我想说我最后一次使用python函数subprocess.call()
。我们可以搜索字符串subprocess\.call\(
作为-S diff选项的参数,如下所示:
git log -Ssubprocess\.call\( --patch
这种git log的使用将显示每个具有您指定的文本更改的提交的日志,并显示每个提交的差异补丁。
如果我想知道我如何使用一个不再有任何调用函数的函数,我只想:
text=subprocess\.call\(
git log --patch -S$text | grep -m 10 "$text"
或者如果我想知道最后一次被特别删除的话:
text=subprocess\.call\(
git log --patch -S$text | grep -m 1 "^-.*$text"