Изменять сообщения предыдущих коммитов, оставляя их подписанными
У меня есть куча подписанных и выдвинутых коммитов. Я хочу изменить свои сообщения. Тем не менее, когда я делаю это с такими командами, как: git rebase -i HEAD~12
а также reword
их подписи исчезают (я проверяю это с git log --show-signature
). Как изменить сообщения коммитов, оставив их подписанными?
2 ответа
Решение
Невозможно сохранить старые подписи при изменении (например, сообщений) коммитов.
Один из способов изменить сообщения и снова выйти из системы (создать новые коммиты и заменить старые):
git rebase -i -S HEAD~12
Вы можете снова подписать их, используя эту команду:
git commit --amend --signoff
Для нескольких коммитов:
git filter-branch -f --commit-filter 'git commit-tree -S "$@"' HEAD
git push -f