¿Cómo editar un mensaje de confirmación incorrecto en Mercurial? [duplicar]
Actualmente estoy usando TortoiseHg (Mercurial) y accidentalmente envié un mensaje de confirmación incorrecto. ¿Cómo hago para editar este mensaje de confirmación en el repositorio?
Actualización: Mercurial ha agregado --amend
cuál debería ser la opción preferida ahora .
Puede revertir la última confirmación (pero solo la última) hg rollback
y luego volver a aplicarla.
Importante : esto elimina permanentemente la última confirmación (o extracción). Entonces, si ha realizado una hg update
confirmación y esa confirmación ya no está en su directorio de trabajo, desaparecerá para siempre. Así que primero haz una copia.
Aparte de eso, no puede cambiar el historial del repositorio (incluidos los mensajes de confirmación), porque todo lo que contiene está sumado. Lo único que puede hacer es podar el historial después de un conjunto de cambios determinado y luego volver a crearlo en consecuencia.
Nada de esto funcionará si ya ha publicado sus cambios (a menos que pueda obtener todas las copias) y tampoco puede "reescribir el historial" que incluya confirmaciones firmadas por GPG (por otras personas).
Bueno, yo solía hacerlo de esta manera:
Imagínese, tiene 500 confirmaciones y su mensaje de confirmación erróneo está en r.498.
hg qimport -r 498:tip
hg qpop -a
joe .hg/patches/498.diff
(change the comment, after the mercurial header)
hg qpush -a
hg qdelete -r qbase:qtip
Buenas noticias: hg 2.2 acaba de agregar la opción similar a git --amend
.
y en tortoiseHg, puede usar "Modificar revisión actual" seleccionando la flecha negra a la derecha del botón de confirmación
Sé que esta es una publicación antigua y marcaste la pregunta como respondida. Estuve buscando lo mismo recientemente y encontré la histedit
extensión muy útil. El proceso se explica aquí:
http://knowledgestockpile.blogspot.com/2010/12/changing-commit-message-of-revision-in.html