如何在给定 SHA1 的 git 中获取(仅)作者姓名或电子邮件?

How to get (only) author name or email in git given SHA1?

我想检查作者的电子邮件和姓名,以验证谁在推送我的回购。

有什么方法可以让我在 git 中想出一个命令来显示提交者的 name/e-mail 仅给出提交的 SHA1?

这是我想出的,但它远非理想的解决方案(第一个解决方案是针对 git 钩子的,这就是为什么它使用 2 个带有 rev-list 的 SHA1。第二个只是使用 git show):

git rev-list -n 1 --pretty=short  ccd3970..6ddf170 | grep Author | cut -d ' ' -f2- | rev | cut -d ' ' -f2- | rev
git show 6ddf170 | grep Author | cut -d ' ' -f2- | rev | cut -d ' ' -f2- | rev 

您可以使用以下命令:

 git log --format='%ae' HASH^!

它也适用于 git show。您需要包含 -s 以抑制差异。

git show -s --format='%ae' HASH
git show <commit_id> | grep Author

使用 git show + pipe + grep 有效!

这将显示 - sha、提交者电子邮件、作者电子邮件

git log --pretty=format:"%h %ce %ae"