生成密钥
1
$ gpg --full-generate-key
检查已有密钥,下图所示 id 为 3AA5C34371567BD2
1
2
3
4
5
6
$ gpg --list-secret-keys --keyid-format LONG
/Users/hubot/.gnupg/secring.gpg
------------------------------------
sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10]
uid Hubot
ssb 4096R/42B317FD4BA89E7A 2016-03-10
用对应 id 导出公钥,并添加到 GitHub
1
2
$ gpg --armor --export 3AA5C34371567BD2
# Prints the GPG key ID, in ASCII armor format
让 git 使用 gpg 签名
1
$ git config --global user.signingkey 3AA5C34371567BD2
让 git 默认签名所有提交
1
$ git config --global commit.gpgsign true
备份及恢复
1
2
3
4
5
6
7
8
# 备份公钥
gpg -o filename --export 3AA5C34371567BD2
# 导出私钥
gpg -o filename --export-secret-keys 3AA5C34371567BD2
# 导入
gpg --import filename