То, что вы ищете, это git rebase
.
Если вы хотите изменить только предыдущее git commit
сообщение, вам нужно использовать только следующее:
git commit --amend
И внесите необходимые изменения в предыдущий коммит, а затем сохраните изменения.
Однако, если вам нужно изменить старые коммиты, вам нужно использовать rebase
.
git rebase -i HEAD~N
где N равно числу коммитов, к которым вы хотите вернуться, например, 2, 12, 6 и т. д. и т. д.
Здесь вы должны получить текстовый редактор с вашими коммитами. Измените параметр с pick
на, reword
чтобы изменить сообщение.
После того как вы определили все коммиты, которые вы хотите изменить, и соответствующим образом изменили их параметры, сохраните и закройте редактор. Затем внесите изменения в каждое сообщение о коммите. Как только вы удовлетворены, вы можете запустить:
git push --force
И вы должны были поддерживать свою историю git, хотя и с другими значениями хэша, потому что вы внесли необходимые изменения, которые вы хотите. Вот некоторые дополнительные ссылки, которые вы должны проверить:
7.6 Git Tools - Переписывание истории
Справка GitHub - Изменение сообщения
фиксации StackOverflow - Вопрос об изменении старых сообщений фиксации