如何通过最新推送找到特定文件名的用户电子邮件 ID?

How to find the email id for the user, with the latest push, for a specific file name?

我需要找到将特定文件 "xyz.txt" 推送到 git 存储库的人的电子邮件 ID。

使用 git log 命令我得到了所有提交的日志,但是我需要根据文件名找到电子邮件 ID。

是否有任何特定的命令或 JGit API 方法可以执行这样的任务?

不适用于 JGit,但适用于命令行:

git log -1 --format='%ae' -- <filename>

PS。 Git 不记得谁推送了什么,它只记得作者(谁创建了代码)和提交者(谁将代码提交到存储库)。格式 %ae 打印作者的电子邮件。

您可以将 git log(坦率地说,大多数 git 命令)应用到特定文件,方法是使用 -- 将命令与文件分开。从那里开始,它只是一些格式化:

$ git log -n1 --format="%ae" -- somefile.txt