Mercurial: como alterar o último commi

Estou procurando uma contra-parte degit commit --amend no Mercurial, ou seja, uma maneira de modificar o commit ao qual minha cópia de trabalho está vinculada. Os requisitos para este procedimento de alteração são:

se possível, não deve exigir extensões. Devenão requer extensões não padrão, ou seja, extensões que não vêm com uma instalação oficial do Mercuria

se o comprometimento de alterar for um chefe da minha filial atual, sem cabeça nova deve ser criado. Se o commit não for head, um novo head poderá ser criad

o procedimento deve sersegur de uma maneira que, por qualquer motivo, a alteração falhe, desejo que a mesma cópia de trabalho e estado do repositório sejam restaurados como antes da alteração. Por outras palavras, se a alteração em si pode falhar, deve haver um procedimento à prova de falhas para restaurar a cópia de trabalho e o estado do repositório. Estou me referindo a "falhas" que estão na natureza do procedimento de alteração (como, por exemplo, conflitos), não a problemas relacionados ao sistema de arquivos (como restrições de acesso, não ser possível bloquear um arquivo para gravação, ... )

Atualização (1):

o procedimento deve ser automatable, para que ele possa ser executado por um cliente da GUI sem nenhuma interação do usuário necessári

Atualização (2):

s arquivos @ no diretório de trabalho não devem ser tocados (pode haver bloqueios do sistema de arquivos em certos arquivos modificados). Isso significa especialmente que uma abordagem possível pode em nenhum momento exigir um diretório de trabalho limp

questionAnswers(6)

yourAnswerToTheQuestion