小编The*_*ten的帖子

在 git 调用中不请求 gpg-agent

在 git commits (gpg) 中,git命令总是在gpg-agent运行时询问密码。

我启动GPG代理

$ eval `gpg-agent -s --enable-ssh-support --daemon --write-env-file $HOME/.gpg-agent-info`
Run Code Online (Sandbox Code Playgroud)

然后我打开另一个终端并检查它是否正在运行:

$ cat ~/.gpg-agent-info
GPG_AGENT_INFO=/tmp/gpg-w2HH4r/S.gpg-agent:28539:1
SSH_AUTH_SOCK=/tmp/gpg-QQTJCD/S.gpg-agent.ssh
SSH_AGENT_PID=28539
$ ps -u $USER | grep gpg-agent
28539 ?        00:00:00 gpg-agent
$ echo $GPG_AGENT_INFO $SSH_AUTH_SOCK $SSH_AGENT_PID
/tmp/gpg-w2HH4r/S.gpg-agent:28539:1 /tmp/gpg-QQTJCD/S.gpg-agent.ssh 28539
$ echo test | gpg-aes -t D2FA51BD --use-agent | gpg --use-agent
....
test
....
Run Code Online (Sandbox Code Playgroud)

第一个“ .... ”说,这是需要一个密码和GPG代理launchs的pinentry-GTK-2 。最后一个 ' .... ' 表示gpg正在使用密钥 ID 进行签名。

再次运行相同的命令不会要求输入密码

.

但是在运行 git 时, …

git gnupg

9
推荐指数
1
解决办法
2243
查看次数

标签 统计

git ×1

gnupg ×1