Git使用错误的子密钥对使用GPG密钥的提交进行签名

Git使用错误的子密钥对使用GPG密钥的提交进行签名,git,gnupg,Git,Gnupg,我对git和使用GPG密钥签名提交有问题 我有一个主密钥(仅用于认证)。我已经为每台计算机创建了两个子键(仅用于签名)。我已经将公钥添加到Github,通过使用user.signingKeyconfiguration选项配置git 问题是git似乎忽略了配置选项,并且一直使用最新的子密钥(列表中的最新子密钥gpg--list secret keys EMAIL) 我已经在两个环境中检查过了,同一个问题。我正在使用以下git版本:git版本2.15.1 有什么线索吗?描述: -S[] --gpg符

我对git和使用GPG密钥签名提交有问题

我有一个主密钥(仅用于认证)。我已经为每台计算机创建了两个子键(仅用于签名)。我已经将公钥添加到Github,通过使用
user.signingKey
configuration选项配置git

问题是git似乎忽略了配置选项,并且一直使用最新的子密钥(列表中的最新子密钥
gpg--list secret keys EMAIL

我已经在两个环境中检查过了,同一个问题。我正在使用以下git版本:
git版本2.15.1

有什么线索吗?

描述:

-S[] --gpg符号[=] GPG签名提交。keyid参数是可选的,默认为提交者标识;如果指定,则必须将其粘贴到选项上,且不留空格

总是在git commit上指定签名键是否有帮助`

这可能是git套件上的一个问题(您可以查看他们的问题跟踪程序吗


编辑:也可能值得一试。

要使用特定的子键,KEYID必须附加
。因此配置应如下所示:

[user]
    name = Andrzej Ośmiałowski
    email = me@osmialowski.net
    signingKey = KEYID!

非常感谢Todd Zullinger在Git邮件列表上提供了解决方案。

这肯定是错误的,因为用
--gpg sign=keyid
指定keyid也不起作用;对我来说也不起作用。Git继续抱怨。但是普通的gpg签名很好。我找到了一个解决方案。问题是Git使用了g第1.x页,而不是使用我用于管理密钥的gpg2。