Leo*_*Leo 5 git authentication digital-signature
克隆远程 git 存储库并发出 后git show --show-signature,它表示签名良好。然后我更改了一些文件并测试了相同的命令,它仍然说签名良好。
上面的命令到底检查什么?验证克隆的git的正确方法是什么?开发者的意思是什么?
git show --show-signature完全按照其联机帮助页中的说明进行操作:
--显示签名
通过将签名传递给 gpg --verify 来检查签名提交对象的有效性并显示输出。
您之前必须导入存储库作者的公钥,以便GPG
知道在哪里查找它。您需要阅读教程以了解GPG其工作原理,才能完全理解其工作原理。
现在对于问题的第二部分,git show没有显式提交 SHA-1 或对象名称通常适用于当前
HEAD. 如果您刚刚修改了工作副本中的一些文件,但没有提交更改,那么存储库中的 HEAD 和所有其他提交将保持不变,因此git show --show-signature
将向您显示与存储库全新克隆后完全相同的内容。如果您决定提交更改,您将HEAD向上移动一次提交,但不会修改前一个 HEAD,因此git show --show-signature HEAD^仍会显示一切正常。