2010-03-18 24 views
10

He estado jugando con colas mercuriales y mercuriales, y ahora tengo una versión de trabajo bastante razonable. Sin embargo, antes de enviar un parche, me gustaría tomar esa historia de spagetti y fusionarla en pasos discretos y lógicos, en lugar de la repetición semi-superpuesta repetida do-undo-redo-ligeramente-diferente que es ahora, si solo para reducir el número de parches.Colas Mercurial: combinando parches

¿Cómo puedo hacer eso?

Respuesta

8

hg qfold es el camino a seguir. Ten mucho cuidado con eso. Asegúrese de haber leído todas las instrucciones anteriores instructions. Es razonable a la versión de su patchqueue también (como repoository anidada), por lo que tiene copias de seguridad:

hg qinit [c]

init un nuevo repositorio de colas

El repositorio de cola es no versionado por predeterminado. Si -c es especificado, qinit creará un repositorio anidado separado para parches (qinit -c también puede ejecutarse posteriormente para convertir un repositorio de parches no versionado en uno versionado). Puede usar qcommit para confirmar cambios en este depósito de cola.

+0

¡Gracias, eso funcionó! Alguien más afirmó que 'hg export ...> combined.patch' hubiera sido igual de efectivo sin requerir MQ, ¿es así? –

+0

Con mercurial 1.5 en adelante también puede importar varios parches en una fila, por lo que no es necesario combinarlos en la exportación. Todavía necesitará MQ para quitarle los cambios, o tendrá que clonar un repositorio limpio y aplicar los parches combinados allí, luego abandonar su rama. Demasiado trabajo en mi humilde opinión. –