「之岙」

「之岙」

如何为Github添加GPG

前置#

终端 gpg 命令正常使用

生成 GPG 密钥#

ps:要和 git config 里的邮箱一致,查看命令如下

git config --global user.email

生成密钥

gpg --full-generate-key
  1. 选择密钥类型:默认即可
  2. 选择算法:默认
  3. 有效期:依自己
  4. 这些内容正确吗:y
  5. 姓名
  6. 邮箱(注意用 git config 里的)
  7. 注释:依自己
  8. 输入密码
获取密钥信息#
gpg --list-keys

第一行开关是 pub,复制第二行的 id,在终端执行:

gpg --armor --export 复制的id

粟子:gpg --armor --export 4F113915706D141348CDC3DB5873563E6B2

执行完会获得一段有 BEGIN 开头,END 结尾的公钥,复制后去 github

将公钥粘贴进 Github#

github-> 右上角头像 ->setting->SSH and GPG keys->New GPG key

  1. 起个 Title
  2. 将复制内容粘贴进 Key 中
  3. Add GPG key
利用 GPG 私钥对 Git commit 签名#

获取密钥列表

gpg --list-keys

复制 id

git config --global user.signingkey 复制的id

粟子:git config --global user.signingkey 4F113915706D141348CDC3DB5873563E6B2

在每次 commit 时,加上 - S 参数即可签名

git commit -S -m "..."

也可以自动要求签名

git config --global commit.gpgsign true
信任 Github 自身的 GPG 密钥#

意义:网页端创建仓库没有显示 Verified,导致强迫症很不爽

导入 Github 自身的 GPG 密钥

curl https://github.com/web-flow.gpg | gpg --import

24 年 Github 过期了一条密钥,所以会导入两条

获取密钥列表

gpg --list-keys

复制那条 Github 没过期的公钥 id,执行签名操作

gpg --sign-key 968479A1AFF927E37D1A566BB5690EEEBB952194

输入 y 确认签名即可

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。