如果使用与你的提交者身份以及 GitHub.com 上帐户关联的已验证电子邮件地址相匹配的 GPG 密钥,则可以开始对提交和标签进行签名。
-
打开终端终端Git Bash。
-
使用
gpg --list-secret-keys --keyid-format=long
命令列出你拥有其公钥和私钥的长形式 GPG 密钥。 签名提交或标记需要私钥。Shell gpg --list-secret-keys --keyid-format=long
gpg --list-secret-keys --keyid-format=long
注意:Linux 上的某些 GPG 安装可能需要改用
gpg2 --list-keys --keyid-format LONG
查看现有密钥的列表。 在这种情况下,还需要通过运行git config --global gpg.program gpg2
来配置 Git 以使用gpg2
。 -
从 GPG 密钥列表中复制您想要使用的 GPG 密钥 ID 的长形式。 在本例中,GPG 密钥 ID 为
3AA5C34371567BD2
:Shell $ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <hubot@example.com> ssb 4096R/4BB6D45482678BE3 2016-03-10
$ gpg --list-secret-keys --keyid-format=long /Users/hubot/.gnupg/secring.gpg ------------------------------------ sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10] uid Hubot <hubot@example.com> ssb 4096R/4BB6D45482678BE3 2016-03-10
-
输入
gpg --edit-key GPG key ID
,替换为你想要使用的 GPG 密钥 ID。 在以下示例中,GPG 密钥 ID 为3AA5C34371567BD2
:gpg --edit-key 3AA5C34371567BD2
-
输入
gpg> adduid
以添加用户 ID 详细信息。gpg> adduid
-
按照提示提供您的真实姓名、电子邮件地址和任何注释。 可以通过选择
N
、C
或E
来修改条目。 要将电子邮件地址保密,请使用 GitHub 提供的no-reply
电子邮件地址。 有关详细信息,请参阅“设置提交电子邮件地址”。Real Name: OCTOCAT Email address: "octocat@github.com" Comment: GITHUB-KEY Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit?
-
输入
O
以确认你的选择。 -
输入密钥的密码。
-
输入
gpg> save
以保存更改gpg> save
-
输入
gpg --armor --export GPG key ID
,替换为你想要使用的 GPG 密钥 ID。 在以下示例中,GPG 密钥 ID 为3AA5C34371567BD2
:$ gpg --armor --export 3AA5C34371567BD2 # Prints the GPG key, in ASCII armor format
-
通过将 GPG 密钥添加到 GitHub 帐户来上传 GPG 密钥。