阅读(2305) (1)

GitHub 对提交签名

2020-08-19 14:03:29 更新

您可以使用 GPG 或 S/MIME 在本地为提交签名。

注: GitHub Desktop 不支持提交签名。

提示:

要将您的 Git 客户端配置为默认对本地仓库的提交签名,请在 Git 版本 2.0.0 及更高版本中,运行 git config commit.gpgsign true。 要在计算机上的任何本地仓库中默认对所有提交签名,请运行 git config --global commit.gpgsign true

要存储 GPG 密钥密码,以便无需在每次对提交签名时输入该密码,我们建议使用以下工具:

- 对于 Mac 用户,GPG Suite 允许您在 Mac OS 密钥链中存储 GPG 密钥密码。
- 对于 Windows 用户,Gpg4win 将与其他 Windows 工具集成。

您也可以手动配置 gpg-agent 以保存 GPG 密钥密码,但这不会与 Mac OS 密钥链(如 ssh 代理)集成,并且需要更多设置。

如果您有多个密钥或尝试使用与您的提交者身份不匹配的密钥对提交或标记签名,应将您的签名密钥告诉 Git

  1. 当本地分支中的提交更改时,请将 S 标志添加到 git commit 命令:

   $ git commit -S -m your commit message
   # Creates a signed commit

  1. 如果您使用 GPG,则创建提交后,提供您生成 GPG 密钥时设置的密码。

  1. 在本地完成创建提交后,将其推送到 GitHub 上的远程仓库:

   $ git push
   # Pushes your local commits to the remote repository

  1. 在 GitHub 上,导航到您的拉取请求。

  1. 在拉取请求中,单击 Commits(提交)

拉取请求上的提交选项卡

  1. 要查看关于已验证签名的更多详细信息,请单击 Verified(已验证)。

已签名提交

延伸阅读