请参阅@sideshowbarker和@Xavier Ho解决方案,我通过以下步骤解决了我的问题。
假设通过brew安装gpg2,
git config --global gpg.program gpg2
brew install pinentry
gpgconf --kill gpg-agent
gpg2 -K --keyid-format SHORT
// no key found then generate new one
gpg2 --gen-key
gpg2 -K --keyid-format SHORT
... /。gnupg / pubring.gpg
sec rsa2048 / 0A61C6FC 2017-06-29 [SC] [过期:2019-06-29]
git config --global user.signingkey 0A61C6FC
由我的同事提醒,需要附加
export GPG_TTY=$(tty)
到〜/ .zshrc(如果使用zsh),否则附加到〜/ .bash_profile
对于macOS,
gpg2与brew中的gpg合并,因此gpg命令指向gpg2
brew install gpg2
酿造信息gpg
gnupg:稳定的2.2.6(瓶装)
git config --global gpg.program gpg
gpg -K --keyid-format SHORT
并且有pinentry-mac用于密码输入
brew install pinentry-mac
vim ~/.gnupg/gpg-agent.conf
加线
pinentry程序/ usr / local / bin / pinentry-mac