如何查找文件中"given line"更改的提交哈希/开发人员、日期等



这可能是一个奇怪的问题,但我想我应该在这里检查一下。

我在Git/Hg(Mercurial)分布式版本控制系统中有一个源代码文件。

假设在第#100行,我看到:

if [[ `echo "${var}" | grep "system"` ]]; then env="env_system"; else env="env_local"; fi

这是否可以在 Git(或类似的 DVCS)中找到 - 我如何找到文件中"给定行"涉及哪些提交/提交哈希/开发人员。

如何找到哪些 Git 哈希、带有日期的开发人员 - 在此文件的生命周期内参与了在文件中添加/更改上述行?

回答问题的第一部分(本行最后更改的作者)

听起来像是git blame的工作:

git blame -L 100,100 path/to/file

也会在你想要的信息之后输出行本身,但它可能足以满足你打算做的任何事情?

为了更快地使用,也许可以制作一个别名:

git config --global alias.bl '!f() { git blame -L $1,$1 $2; }; f'

然后

git bl 100 path/to/file

最新更新