Mercurial feature work: ¿mantener el trabajo personalizado limpio como la mejor práctica?

He estado usando sistemas de control de fuente durante aproximadamente 10 años, cada uno obviamente con sus propios modismos y prácticas.

Actualmente estoy usando Mercurial para el desarrollo de .NET y tengo un requisito particular de que me pregunto cuáles serían sus opiniones para lograr mejor mi objective.

Desarrollamos un producto de línea de base que es una especie de lanzamiento rodante. Algunos clientes necesitan que el producto se adelgace (debido a que obtienen licencias más baratas) o que se haga un trabajo a medida. Tiendo a ramificar el "tronco" (twig por defecto en Mercurial), hago el trabajo a medida y creo una construcción.

Cuando el nuevo trabajo se realiza en "tronco" y necesito una nueva compilation a partir de la twig a medida, fusionaré los cambios usando hg merge -r CHANGESET_NUM_FROM_DEFAULT_HERE y luego haré una compilation.

Esto funciona bien, pero la twig a medida se llena rápidamente con confirmaciones relacionadas con el "tronco" y sin características realmente realists. Esto significa que cuando necesito mirar a través de los sets de cambios para esta twig, están desorderados.

Lo que realmente quiero es que cambie donde comienza el "punto de unión" de la twig, por lo que la list de cambios a medida solo contiene check-ins personalizados, pero el padre de la twig personalizada cambia.

Traté de usar la extensión de rebase, ya que parece que debería hacer esto, pero en su lugar hace muchas fusiones y todavía desorderar mi twig personalizada.

¿Hay alguna forma de mantener limpia mi twig personalizada? ¿O estoy haciendo las cosas mal?

Tu twig personalizada está limpia ahora. Pero, si lo que quieres es no ver mergesets en el logging de twigs, solo omite el logging

hg help log

opciones:

-M –no-merges no muestra fusiones

hg log -r 55:tip --template "{branch}:{rev}\n" -b default

pnetworkingeterminado: 55

pnetworkingeterminado: 56

pnetworkingeterminado: 57

pnetworkingeterminado: 60

pnetworkingeterminado: 61

pnetworkingeterminado: 63

pnetworkingeterminado: 65

pnetworkingeterminado: 66

hg log -r 55:tip --template "{branch}:{rev}\n" -b default -M

pnetworkingeterminado: 55

pnetworkingeterminado: 56

pnetworkingeterminado: 57

pnetworkingeterminado: 61

pnetworkingeterminado: 65

pnetworkingeterminado: 66

y captura de pantalla del gráfico de THG

Fusiones