使用
1. 安装 GPG
brew install gnupg
添加 tty 配置,在 .zshrc 或 .bashrc 中添加以下内容,保存后执行 source .zshrc 或 source .bashrc
GPG_TTY=$(tty)
export GPG_TTY
主要是解决终端加密时报错 gpg: signing failed: Inappropriate ioctl for device
2. 安装密钥
gpg --gen-key
查看密钥信息
gpg --list-keys
密钥信息示例,其中 8AE9967DDGGA0B9699367748501HAA2BVF729701 为密钥 ID
[keyboxd]
---------
pub er26965 2025-03-02 [SC] [有效至:2028-03-01]
8AE9967DDGGA0B9699367748501HAA2BVF729701
uid [ 绝对 ] Example man <example@example.com>
sub cv26965 2025-03-02 [E] [有效至:2028-03-01]
导出公钥配置到 GitHub 之类的网站上
gpg --armor --export <your-key-id>
公钥示例
-----BEGIN PGP PUBLIC KEY BLOCK-----
JFODFOPDIJFLKDJFSDHJASDDSFSD987213412
FDSF899HJFIK9TDSUISIFD08
=DF90
-----END PGP PUBLIC KEY BLOCK-----
3. Git 配置
配置使用该 GPG 密钥,单项目配置
git config user.signingkey <your-key-id>
全局配置
git config --global user.signingkey <your-key-id>
提交时,添加 -S 参数,示例
git commit -S -m "xxxxx"
添加配置,默认启用 GPG
git config commit.gpgsign true
全局默认启用 GPG
git config --global commit.gpgsign true