Git 不要求我提供 gpg 密码并且我的提交失败
Git does not ask me for gpg passphrase and fails my commit
当我执行 git commit -a -S -m "Commit Message"
时,出现此错误:
You need a passphrase to unlock the secret key for
user: "Username (Gpg Key) <email-id>"
2048-bit RSA key, ID 2487BE7C, created 2016-10-03
error: gpg failed to sign the data
fatal: failed to write commit object
但是,当我提交时,它甚至没有 ask/prompts 作为我的密码。那么,在使用 gpg 的 -S
标志时,如何以及在何处输入我的密码?
如果您正在使用 OSX。似乎 gpg 更新(brew)将 gpg 的位置更改为 gpg1,您可以更改 git 查找 gpg 的二进制文件:
git config --global gpg.program gpg1
我有类似的事情。我有 gpg 和 gpg2 二进制文件,它们都指向 GPG 版本 2.0.30。没有提示我输入密码。
在您的 bash 配置文件中(我在我的 .zshrc 文件中完成)添加以下行:
export GPG_TTY=$(tty)
它停止提示我,所以我不得不杀死守护进程
ps aux | grep gpg
mark 3129 0.0 0.0 4397952 820 ?? Ss 8Mar19 0:28.84 gpg-agent --homedir /Users/Mark/.gnupg --use-standard-socket --daemon
mark 18137 0.0 0.0 4286492 848 s000 R+ 3:43pm 0:00.00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn gpg
然后
sudo kill -9 3129
然后就成功了。这可能是一个稍微不同的问题。
当我执行 git commit -a -S -m "Commit Message"
时,出现此错误:
You need a passphrase to unlock the secret key for
user: "Username (Gpg Key) <email-id>"
2048-bit RSA key, ID 2487BE7C, created 2016-10-03
error: gpg failed to sign the data
fatal: failed to write commit object
但是,当我提交时,它甚至没有 ask/prompts 作为我的密码。那么,在使用 gpg 的 -S
标志时,如何以及在何处输入我的密码?
如果您正在使用 OSX。似乎 gpg 更新(brew)将 gpg 的位置更改为 gpg1,您可以更改 git 查找 gpg 的二进制文件:
git config --global gpg.program gpg1
我有类似的事情。我有 gpg 和 gpg2 二进制文件,它们都指向 GPG 版本 2.0.30。没有提示我输入密码。
在您的 bash 配置文件中(我在我的 .zshrc 文件中完成)添加以下行:
export GPG_TTY=$(tty)
它停止提示我,所以我不得不杀死守护进程
ps aux | grep gpg
mark 3129 0.0 0.0 4397952 820 ?? Ss 8Mar19 0:28.84 gpg-agent --homedir /Users/Mark/.gnupg --use-standard-socket --daemon
mark 18137 0.0 0.0 4286492 848 s000 R+ 3:43pm 0:00.00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn gpg
然后
sudo kill -9 3129
然后就成功了。这可能是一个稍微不同的问题。