使用更新版本,git可以使用PGP密钥对单个提交(除标签外)进行签名:
git commit -m "some message" -S
Run Code Online (Sandbox Code Playgroud)
您可以git log使用--show-signature选项在输出中显示这些签名:
$ git log --show-signature
commit 93bd0a7529ef347f8dbca7efde43f7e99ab89515
gpg: Signature made Fri 28 Jun 2013 02:28:41 PM EDT using RSA key ID AC1964A8
gpg: Good signature from "Lars Kellogg-Stedman <lars@seas.harvard.edu>"
Author: Lars Kellogg-Stedman <lars@seas.harvard.edu>
Date: Fri Jun 28 14:28:41 2013 -0400
this is a test
Run Code Online (Sandbox Code Playgroud)
但有没有办法以编程方式验证给定提交上的签名,而不是通过grepping输出git log?我正在寻找相当于提交的提交git tag -v- 这将提供退出代码,指示给定提交是否存在有效签名.