Git 提交每次都会要求 OpenPGP 密钥

The*_*Cog 13 git macos bitbucket

我已经使用linux很长时间了,最​​近我开始使用macbook。作为我的设置过程的一部分,我做了通常的“让 git 运行”,其中包括制作 ssh 密钥。一切都很顺利。我还必须安装 gpg,因为除非我的提交经过签名,否则 git 不会让我提交,这很公平。我生成了密钥,并给了它一个密码。成功了,我可以自由地投入了!嗯,有点像。

每当我尝试提交任何内容时,我都会收到以下消息,并被迫输入密码“请输入密码以解锁 OpenPGP 密钥:”现在,我搜索了互联网,发现了很多有关如何解锁的文章当您进行 git 推送时(我已经配置了)以及所有其他类型的不相关文章,请记住您的密码。我的同事没有这个问题,我也找不到办法避免每次都输入密码。

希望有一个超级简单的方法,因为我不知道正确的关键字而错过了。

提前致谢。

ofh*_*use 11

我按照本指南进行操作,并能够获得 UI 对话框,要求将密码保存到钥匙串。与 MacOS Monterey 12.0.1 一起使用。

Pinentry Mac UI 对话框


  1. 内容~/.gnupg/gpg-agent.conf
    pinentry-program /opt/homebrew/bin/pinentry-mac
    enable-ssh-support
    
    Run Code Online (Sandbox Code Playgroud)
  2. 之后,杀死所有 GnuPG 进程(并非所有 GnuPG 进程都已实际安装):
    killall gpg-agent
    killall gpg2
    killall gpg
    killall dirmngr
    
    Run Code Online (Sandbox Code Playgroud)
  3. 运行以下测试:
    echo "Test" | gpg -as
    
    Run Code Online (Sandbox Code Playgroud)

Pinentry Mac 中的对话框(如上所示)应该会显示。


对于我的 GPG 设置,我遵循了这个要点的指南。

  • 我什至没有安装 pinentry-mac 。第一次运行:brew install pinentry-mac 然后我就能够按照你的指示进行操作。谢谢你! (3认同)