Если была допущена ошибка в сообщение и команда git commit
уже выполнена, не отчаивайтесь — все можно поправить. Рассмотрим два варианта:
Как изменить сообщение последнего коммита?
Данный пункт подразумевает, что вы еще не выполняли команду git push
и все изменения хранятся в Вашем локальном репозитории. Выполните команду:
git commit --amend
после выполнения данной команды откроется редактор, установленный по умолчанию, который позволит вам изменить сообщение последнего коммита.
Если комментарий маленький — более удобно изменить комментарий последнего коммита в командной строке, с помощью команды:
git commit --amend -m "новое соошение"
Code language: JavaScript (javascript)
Предупреждение: Перед коммитом убедитесь, что у вас нет внесенных изменений в рабочую копию, иначе они тоже будут закоммичены. (Unstaged изменения не коммитятся)
Как изменить сообщения коммита, который вы уже отправили на сервер?
Если вы уже отправили коммит на сервер с помощью команды git push
, то — после внесения изменений в коммит локально (как описано выше) — вам также потребуется выполнить команду push
из ключем --force
:
git push <название ветка на сервере> --force
Code language: HTML, XML (xml)
или
git push <название ветка на сервере> -f
Code language: HTML, XML (xml)
Предупреждение: при использовании ключа --force
, если в удаленной ветке есть коммиты, которых нет в вашей локальной ветке, вы потеряете эти коммиты.
Будьте осторожны при внесении изменений в коммиты, особенно те, которые вы уже отправили на сервер. Внесение изменений в коммиты по существу переписывает их, чтобы они имели другие идентификаторы SHA, что создает проблему, если у других людей есть копии старого коммита, который вы переписали. Любой, у кого есть копия старого коммита, должен будет синхронизировать свою работу с вашим недавно переписанным коммитом, что иногда может быть сложно, поэтому убедитесь, что вы координируете свои действия с другими при попытке переписать общую историю коммитов, или просто избегайте редактирования коммитов.