"git show --show-signature" 到底验证了什么?
What exactly does "git show --show-signature" verify?
克隆远程 git 存储库并发布 git show --show-signature
后,它说签名是正确的。然后我更改了一些文件并测试了相同的命令,它仍然说签名是好的。
上面的命令到底检查了什么?验证克隆的正确方法是什么 git 是开发者的意思?
提交不会改变。 git status
将报告您的工作树的状态; git show
用于向您显示存储库内容。
git show --show-signature
完全按照联机帮助页中的说明进行操作:
--show-signature
Check the validity of a signed commit object by passing the signature to gpg --verify and show the output.
您之前必须导入回购作者的 public 密钥,以便 GPG
可以知道在哪里寻找它。您需要阅读教程才能
了解 GPG
的工作原理以充分理解它的工作原理。
现在回答你问题的第二部分,git show
显式提交 SHA-1 或对象名称通常适用于当前
HEAD
。如果你只是修改了工作副本中的一些文件但是
没有提交更改然后 HEAD 和您的所有其他提交
存储库将保持不变,因此 git show --show-signature
将向您显示与全新克隆后完全相同的内容
存储库。如果您决定提交您的更改,您将移动
你的 HEAD
一次提交但不会修改之前的 HEAD 所以 git show --show-signature HEAD^
仍然会显示一切正常。
克隆远程 git 存储库并发布 git show --show-signature
后,它说签名是正确的。然后我更改了一些文件并测试了相同的命令,它仍然说签名是好的。
上面的命令到底检查了什么?验证克隆的正确方法是什么 git 是开发者的意思?
提交不会改变。 git status
将报告您的工作树的状态; git show
用于向您显示存储库内容。
git show --show-signature
完全按照联机帮助页中的说明进行操作:
--show-signature
Check the validity of a signed commit object by passing the signature to gpg --verify and show the output.
您之前必须导入回购作者的 public 密钥,以便 GPG
可以知道在哪里寻找它。您需要阅读教程才能
了解 GPG
的工作原理以充分理解它的工作原理。
现在回答你问题的第二部分,git show
显式提交 SHA-1 或对象名称通常适用于当前
HEAD
。如果你只是修改了工作副本中的一些文件但是
没有提交更改然后 HEAD 和您的所有其他提交
存储库将保持不变,因此 git show --show-signature
将向您显示与全新克隆后完全相同的内容
存储库。如果您决定提交您的更改,您将移动
你的 HEAD
一次提交但不会修改之前的 HEAD 所以 git show --show-signature HEAD^
仍然会显示一切正常。