Skip to main content

将电子邮件与 GPG 密钥关联

GPG 密钥必须 GitHub 验证过与提交者身份匹配的电子邮件地址匹配。

Platform navigation

如果使用与你的提交者身份以及 GitHub.com 上帐户关联的已验证电子邮件地址相匹配的 GPG 密钥,则可以开始对提交和标签进行签名。

  1. 打开终端终端Git Bash

  2. 使用 gpg --list-secret-keys --keyid-format=long 命令列出你拥有其公钥和私钥的长形式 GPG 密钥。 签名提交或标记需要私钥。

    Shell
    gpg --list-secret-keys --keyid-format=long
    

    注意:Linux 上的某些 GPG 安装可能需要改用 gpg2 --list-keys --keyid-format LONG 查看现有密钥的列表。 在这种情况下,还需要通过运行 git config --global gpg.program gpg2 来配置 Git 以使用 gpg2

  3. 从 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
    
  4. 输入 gpg --edit-key GPG key ID,替换为你想要使用的 GPG 密钥 ID。 在以下示例中,GPG 密钥 ID 为 3AA5C34371567BD2

    gpg --edit-key 3AA5C34371567BD2
    
  5. 输入 gpg> adduid 以添加用户 ID 详细信息。

    gpg> adduid
    
  6. 按照提示提供您的真实姓名、电子邮件地址和任何注释。 可以通过选择 NCE 来修改条目。 要将电子邮件地址保密,请使用 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?
    
  7. 输入 O 以确认你的选择。

  8. 输入密钥的密码。

  9. 输入 gpg> save 以保存更改

    gpg> save
    
  10. 输入 gpg --armor --export GPG key ID,替换为你想要使用的 GPG 密钥 ID。 在以下示例中,GPG 密钥 ID 为 3AA5C34371567BD2

    $ gpg --armor --export 3AA5C34371567BD2
    # Prints the GPG key, in ASCII armor format
    
  11. 通过将 GPG 密钥添加到 GitHub 帐户来上传 GPG 密钥。

延伸阅读