Как изменить "общедоступный" набор изменений в Mercurial

Я хотел бы внести поправки в мой последний коммит, но

hg commit --amend

дает мне

abort: cannot amend public changesets

хотя я знаю, что он безопасен для редактирования набора изменений. Как я могу изменить фазу моего последнего совершения и/или сообщить Mercurial, что он может быть изменен?

Ответ 1

В Mercurial wiki есть хороший обзор фаз.

Чтобы преобразовать текущую фиксацию из "public" в "draft" commit, чтобы разрешить изменение, используйте

hg phase --draft --force .

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