Git提交使用GPG后总需要输入密码的怎么解

使用GPG签名后每天提交总有几次需要输入密码,神烦。

# 解决方案1

为什么并不是每次提交都需要密码呢,实际上他有个默认的缓存时间,但是很短,所以我们可以把它改长。

# gpg-agent.conf
max-cache-ttl 60480000
default-cache-ttl 60480000

# 解决方案2

修改pinentry-program,mac下的pinentry-mac支持保存密码

# gpg-agent.conf
pinentry-program /usr/local/bin/pinentry-mac

pinentry-mac可能需要单独安装

# 解决方案3?

可能也可以通过预设密码来解决,但是我试的时候总是报不支持,放弃 https://wiki.archlinux.org/index.php/GnuPG#Configuration

# 参考链接

  • https://wiki.archlinux.org/index.php/GnuPG#Cache_passwords
  • https://morooi.cn/2020/github-gpg/