Mercurial: как изменить последний коммит?

Я ищу ответную частьgit commit --amend в Mercurial, то есть способ изменить коммит, с которым связана моя рабочая копия. Требования к этой процедуре внесения поправок:

если возможно, он не должен требовать каких-либо расширений. Это должноне требует расширений не по умолчаниюрасширения, которые не поставляются с официальной установкой Mercurial.

если обязательство изменить является одним из руководителей моего текущего филиала,нет новой головы должен быть создан. Если фиксация не является заголовком, может быть создан новый заголовок.

процедура должна бытьбезопасный таким образом, что если по каким-либо причинам изменение не удастся, я хочу восстановить то же состояние рабочей копии и хранилища, что и до внесения изменений. Другими словами, если само изменение может потерпеть неудачу, должна существовать отказоустойчивая процедура для восстановления рабочей копии и состояния хранилища. Я имею в виду «сбои», которые лежат в природе процедуры внесения изменений (например, конфликты), а не проблемы, связанные с файловой системой (например, ограничения доступа, невозможность заблокировать файл для записи, ... )

Обновление (1):

процедура должна бытьавтоматизировантаким образом, это может быть выполнено клиентом GUI без какого-либо вмешательства пользователя.

Обновление (2):

файлы в рабочем каталоге не должны быть затронуты (могут быть блокировки файловой системы на некоторых измененных файлах). Это особенно означает, что возможный подход ни в коем случае не может требовать чистого рабочего каталога.

Ответы на вопрос(2)

Ваш ответ на вопрос