我在这样一个巨大的仓库中有一些 ruby 代码
def my_func params
{
:k1 => 1,
:k2 => 2,
:k3 => 3,
:k4 => 4,
:k5 => 5,
:k6 => 6
}
end
不知何故,随着时间的推移,很少有键值对被删除。我想知道这是git blame
谁做的,但是键值对非常常见,以至于grep
会导致太多误报。那么有没有办法查看函数对所有提交的更改?
我试过类似的东西git log -L /^\s+def my_func/,/^\s+def/ src/to/file.rb
,没有用。像 SourceTree 这样的 GUI 工具有“记录这个文件”,它只显示差异,所以我不知道更改属于哪个函数。我还搜索了stackoverflow并用谷歌搜索了一下,没有找到通用的方法。