Как избавиться от некоторых изменений в Hg?

Эй, я хочу отменить некоторые изменения в Hg, но мне трудно это сделать.

Я внес некоторые изменения случайно, поэтому я хотел отменить это. Немного попробовав, я смог hg backout , но он создал новую фиксацию. Теперь я хотел, чтобы мое репо перешло в исходное состояние (без последних двух коммитов и с моими изменениями в рабочем каталоге). Видимо там ' у меня нет способа сделать это (что-то вроде git reset --soft ). Есть?

Еще я попытался избавиться от последней фиксации (той, которая вернула исходную). Это было бы похоже на git reset --hard , но, опять же, нет способа сделать это. Я могу hg update -C , но это больше похоже на git checkout , так как фиксация все еще существует.

А также hg update -C -r X возвращает меня к ревизии X, но когда я проверяю hg log , я не могу узнать, в какой ревизии я сейчас нахожусь. Единственный способ - проверить мою историю bash, верно? Должен быть способ узнать это.

В общем, я пытался разобраться в этом некоторое время, но не мог найти ничего, что могло бы решить эту проблему. Ссылки, которые я нашел при сравнении команд git и hg, не точны, поскольку команды не имеют одинакового поведения.

Думаю, я просто хочу знать, каковы НАСТОЯЩИЕ эквиваленты в hg для git reset - hard и git reset --soft ...

Спасибо.

7
задан Martin Geisler 15 November 2010 в 12:46
поделиться