git使用GPG进行签名

什么是GPG

要了解什么是GPG,就要先了解PGP。
1991年,程序员Phil Zimmermann为了避开政府监视,开发了加密软件PGP。这个软件非常好用,迅速流传开来,成了许多程序员的必备工具。但是,它是商业软件,不能自由使用。所以,自由软件基金会决定,开发一个PGP的替代品,取名为GnuPG。这就是GPG的由来。

生成GPG Key

mkdir ~/.gnupg  #GPG保存文件时需要
gpg --gen-key   #根据提示输入信息

查看生成的GPG key

gpg --list-keys         #公钥
gpg --list-secret-keys  #私钥
c:/Users/***/.gnupg\pubring.gpg
------------------------------------------
pub   2048R/E6FA5EAF 2015-08-25 [expires: 2025-08-22]
uid                  yourname (first pgp encrypt) <***@qq.com>
sub   2048R/41B91511 2015-08-25 [expires: 2025-08-22]

使用GPG加密tag

git tag -u "gpg-key-id" -m "tag comment" v2.0
# -u, --local-user <key-id> #指定gpg keyId

配置gitconfig

git config --global user.signingkey <GPG-key-id>

现在你能够签署标签或提交时,不必每次运行时指定密钥:

git commit -S -m "GPG-sign" 
# -s --signoff ,只添加一行Signed-off-by注释
# -S[<keyid>]  ,使用GPG签名并提交.

git tag -s -m "GPG-sign tag"
# -s --sign    ,使用默认key签名 

默认情况下git log不会列出或者验证签名。要显示提交所对应的签名,我们可以使用--show-signature选项

git log --show-signature

参照:
- GPG入门教程
- Git 使用中的教训:签名提交确保代码完整可信

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值