配置提交和标签签名
首选项 › Commit Signing 选择 Format(OpenPGP、SSH 密钥或 X.509)和 Key,以及是否选择 Sign every commit 和 Sign every annotated tag。在您按下 Apply to Global Git Config 之前,不会写入任何内容。然后,图表和提交详细信息显示每个提交的签名状态。
免费已更新
免费使用 GitTree:登录后的所有本地 Git 功能。
开始之前
- 用于签名的 GnuPG 密钥或
.ssh文件夹中的 SSH 密钥。
在哪里可以找到它
- 首选项 › Commit Signing。
| 行动 | macOS | Windows 和 Linux |
|---|---|---|
| 偏好设置 | ⌘, | Ctrl+, |
步骤
选择格式和密钥
在 Choose a signing key 下,选择 Format 和 Key。 No key 让 git 从您的电子邮件中找到一个。
选择要签署的内容
勾选 Sign every commit,如果需要的话,勾选 Sign every annotated tag。
申请
按 Apply to Global Git Config。 GitTree说Signing settings were written to your global git config.
检查提交
进行提交并在图表中查看:当密钥受信任时,它会显示 Good signature from …。
预期结果
您的提交和标签均已签名,您可以查看每个提交的签名者。
签名状态
| GitTree 说 | 含义 |
|---|---|
| Good signature from … | 已签名且密钥可信。 |
| Signed by …, but the key is not trusted | 已签名,但不是由您信任的密钥签名。 |
| Signed, but the key is not available to check it | 这里缺少公钥。 |
| Bad signature | 提交与其签名不匹配。 |
| Not signed | 没有签名。 |
根据 Trusted SSH signers file (gpg.ssh.allowedSignersFile) 检查 SSH 签名;没有它,就无法检查它们。具有自己的签名密钥的配置文件会在该密钥处于活动状态时覆盖该密钥。
如果出现问题
“没有找到 GnuPG 密钥。”
首先创建或导入 GnuPG 密钥,或选择 SSH key 作为格式。
问题
这会改变其他 git 工具吗?
是的:它会写入你的全局 git 配置,每个 git 工具都会读取它。这就是为什么在您申请之前不会写任何内容。