Mercurial (hg) equivalente a git reset (--mixed o --soft)

¿Cuál sería un comando mercurial equivalente (o flujo de trabajo) para

git reset --mixed HEAD^

o

git reset --soft  HEAD^

es decir, quiero dejar el árbol de trabajo intacto pero volver a colocar el repositorio en el estado en que estaba antes de la última confirmación. Sorprendentemente, no encontré nada útil en stackoverflow o con google.

Tenga en cuenta que no puedo usar

hg rollback

como he hecho un poco de reescritura de historia usando HistEdit después del último commit.

Añadido para aclarar: Después de un poco de rebasado y edición de historia, terminé con A <- B <- C. Luego usé HistEdit para aplastar B y C juntos, obteniendo A <- C '. Ahora quiero dividir la confirmación C '(cometí los archivos incorrectos en B). Pensé que la forma más fácil de hacer esto era devolver el repositorio al estado A (que técnicamente nunca existió en el repositorio debido a toda la reorganización y la edición del historial de antemano) y el árbol de trabajo al estado de C 'y luego hacer dos se compromete

Respuestas a la pregunta(1)

Su respuesta a la pregunta