Menu
Coddy logo textTech

Исправление последнего коммита

Часть раздела Контроль версий путешествия по Terminal на Coddy — урок 42 из 58.

Если вы только что создали коммит и сразу поняли, что сообщение неверно, или забыли включить файл, вы можете перезаписать этот коммит с помощью:

git commit --amend -m "New message"

Это заменяет самый последний коммит новым, который содержит ваше обновленное сообщение и включает в себя всё, что в данный момент находится в индексе (staged).

Чтобы добавить забытый файл в предыдущий коммит, сначала добавьте его в индекс, а затем выполните amend без изменения сообщения:

git add forgotten.txt
git commit --amend --no-edit

Флаг --no-edit сохраняет существующее сообщение.

Есть один нюанс: исправление (amend) создает совершенно новый коммит (с новым ID), хотя это и выглядит как редактирование. Исправляйте только те коммиты, которыми вы еще ни с кем не поделились, иначе вы запутаете коллег, у которых уже есть старая версия.

challenge icon

Задание

Легко

Папка содержит app.py. Инициализируйте репозиторий, добавьте файл в индекс и закоммитьте его с сообщением Inital commit (намеренная опечатка).

Исправьте коммит (amend), чтобы изменить сообщение на Initial commit, затем выведите тему последнего коммита с помощью git log -1 --pretty=%s.

Шпаргалка

Исправьте сообщение последнего коммита с помощью --amend:

git commit --amend -m "New message"

Добавьте забытый файл в предыдущий коммит без изменения сообщения:

git add forgotten.txt
git commit --amend --no-edit

Исправление создает новый ID коммита — изменяйте только те коммиты, которые еще не были опубликованы.

Попробуйте сами

Терминал
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Контроль версий