He terminado de trabajar en una rama de función feature-x
. Quiero fusionar los resultados a la rama default
y cerrar feature-x
para deshacerme de ella en la salida de hg branches
.¿Cómo cerrar correctamente una rama de función en Mercurial?
me ocurrió con el siguiente escenario, pero tiene algunos problemas:
$ hg up default
$ hg merge feature-x
$ hg ci -m merge
$ hg up feature-x
$ hg ci -m 'Closed branch feature-x' --close-branch
Así las feature-x
rama (changests 40
- 41
) está cerrado, pero hay una nueva cabeza, la rama de cierre 44
conjunto de cambios, que se enumeran en hg heads
cada vez que:
$ hg log ...
o 44 Closed branch feature-x
|
| @ 43 merge
|/|
| o 42 Changeset C
| |
o | 41 Changeset 2
| |
o | 40 Changeset 1
|/
o 39 Changeset B
|
o 38 Changeset A
|
actualización: Parece que desde la versión 1.5, Mercurial ya no muestra encabezados de ramas cerradas en la salida hg heads
.
¿Es posible cerrar una rama fusionada sin dejar una cabeza más? ¿Hay alguna forma más correcta de cerrar una rama de características?
preguntas relacionadas:
@Andrey: pero el artículo señalado no solo habla de "--close-branch". Muestra * cuatro * formas de podar su rama. Si realmente no lo quieres más, puedes clonar como se explica en el artículo. El único "problema" es si por alguna razón quieres cerrarlo, pero mantenlo. – SyntaxT3rr0r
@WizardOfOdds Sí, he leído todo el artículo sobre la poda de ramas muertas. Quiero que la rama permanezca en el historial de revisión, no para descartarla. Previamente, simplemente fusioné ramas de características en 'default' sin" cerrarlas ". Resultó en 0 nuevas cabezas, pero tales ramas eran visibles en 'hg branches' para siempre (como ramas inactivas). –
Para desarrollar funciones, tiendo a clonar todo el repositorio y luego fusionarlo de nuevo una vez que la función ha finalizado. No me gusta tener los restos de ramas (cerradas) en la historia. – DanMan