Некоторое время я подписываю коммиты git ключом GPG «A». Через некоторое время я решил отозвать этот ключ и начать использовать GPG-ключ «B». Я также продолжил подписывать новые коммиты git ключом «B».
Я по-прежнему храню оба ключа (аннулированный ключ «A» и новый ключ «B») локально. Новые коммиты в порядке, но проблема, с которой я сейчас сталкиваюсь, заключается в том, что все старые коммиты git, подписанные с отозванным ключом «A», отображаются с красным предупреждением при просмотре с помощью git log --show-signature
.
Вот как это предупреждение выглядит в журнале git (большая его часть выделена красным цветом):
commit 39a53e42c8856278f481b9035e54eb90d8d2a0b7
gpg: Signature made Sat Aug 1 22:24:38 2015 CEST using RSA key ID 2F7EF26C
gpg: Good signature from "My Name <email1>" [ultimate]
gpg: aka "My Name <email2>" [ultimate]
gpg: WARNING: This key has been revoked by its owner!
gpg: This could mean that the signature is forged.
gpg: reason for revocation: Key is superseded
gpg: revocation comment: New GPG key is used.
gpg: revocation comment: New key fingerprint: C464 17C1 4F7B D54E A082 7090 CAFA 7B1B 2914 ED81
gpg: revocation comment: New key id: 2914ED81
Author: My name <email1>
Date: Sat Aug 1 22:24:38 2015 +0200
Improve test helper
Есть ли настройка, с помощью которой я могу сообщить git или gpg, что этот ключ все еще «в порядке» и ему можно доверять, просто я его больше не использую? (Я хочу оставить этот старый ключ отозванным)
Я был бы признателен, если бы gpg (или git) «мягко» указал, что ключ не используется, вместо того, чтобы предлагать поддельные коммиты. Есть ли настройка безопасности или доверия, которую я мог бы установить для достижения этой цели?
git log --format="%G?"
: см. мой пересмотренный ответ ниже и конец более подробного ответа Проверка подписанных коммитов git?. - person VonC   schedule 28.10.2016