Skip to main content

检查现有 GPG 密钥

在生成 GPG 密钥之前,您可以检查是否有任何现有的 GPG 密钥。

Platform navigation

支持的 GPG 密钥算法

GitHub 支持多种 GPG 密钥算法。 如果您尝试添加使用不支持的算法生成的密钥,可能会发生错误。

  • RSA
  • ElGamal
  • DSA
  • ECDH
  • ECDSA
  • EdDSA

注意:GPG 并未默认安装在 macOS 或 Windows 上。 若要安装 GPG 命令行工具,请参阅 GnuPG 的下载页面

  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 密钥对,或者不想使用任何可用于对提交和标记进行签名的密钥对,则生成新的 GPG 密钥

    • 如果存在现有的 GPG 密钥对,并且您希望使用它来对提交和标记进行签名,则可以使用以下命令显示公钥,并替换要使用的 GPG 密钥 ID。 在本例中,GPG 密钥 ID 为 3AA5C34371567BD2

      $ gpg --armor --export 3AA5C34371567BD2
      # Prints the GPG key ID, in ASCII armor format
      

      然后,可将 GPG 密钥添加到 GitHub 帐户

延伸阅读