如何找到哪些提交删除了包含特定字符串的行?

Jon*_*han 6 git

我有一个不再在我的代码中的任何地方引用的文件.我正在寻找哪些提交删除了对此文件的引用.(我不知道用于引用它的文件).

我知道git log -S会找到添加或删除此字符串的提交.我正在寻找的是能够将此搜索限制为仅删除的那些行.这可能吗?

Ber*_*ach 1

我希望看到一个更简单的解决方案。但如果使用一些 shell 脚本,它会看起来像:

for id in $(git log -Sstring --pretty=%h)
do
  if [ "$(git show $id | grep "+.*string")" != "" ]
  then
    echo $id
  fi
done
Run Code Online (Sandbox Code Playgroud)