Если вам нужно, чтобы GPG подписал все коммиты, ПОСЛЕ определенного коммита в текущей ветке, вы можете использовать следующее:
git filter-branch --commit-filter 'git commit-tree -S "$@";' <COMMIT>..HEAD
Где <COMMIT>
находится идентификатор коммита (например abc123e5
).
Это дает дополнительное преимущество, заключающееся в том, что он не нарушает метаданные фиксации (включая дату фиксации).
Если вы также хотите прекратить получать запросы на ввод вашей парольной фразы GPG при каждом коммите, также посмотрите этот ответ:
https://askubuntu.com/a/805550
Примечание: Переход от gpg
к gpg2
для GIT подписания потребует , чтобы вы повторно импортировать секретный ключ в GPG 2.
git config commit.gpgsign true
.