mercurial merge tortoisehg

Excluyendo un archivo mientras se fusiona en Mercurial



merge tortoisehg (2)

Por supuesto. No fusionar titi.cs es realmente solo usar titi.cs exactamente como existe en A o en B (tu elección). Podrías hacerlo manualmente de esta manera:

hg update A hg merge B hg revert --rev A titi.cs

(intercambie A y B para ir en la otra dirección).
O puede hacerlo automáticamente en la Confguración de la herramienta de combinación con algo así en su .hgrc .

[merge-patterns] titi.cs = internal:local

Lo que le dice a Mercurial que siempre use "este, no ese" para los archivos que coincidan con ese patrón.

Yo uso Mercurial con TortoiseHg. Tengo dos ramas ( A y B ) con dos archivos ( toto.cs y titi.cs ).

¿Hay alguna manera, cuando quiero fusionar B con A , para excluir titi.cs de la fusión, y solo fusionar toto.cs ? Si es posible, ¿cómo puedo hacer eso?


Si está hablando de un determinado archivo del que desea estar exento de la fusión, consulte la respuesta de @ Ry4chan . Esto es perfectamente válido: algunos archivos, como las configuraciones de creación de relaciones, pueden autogenerarse, y la resolución de conflictos para ellos es inútil. O bien, es posible que desee eliminar los cambios realizados en un archivo fuente.

Si, por otro lado, está tratando de imitar las fusiones de sistemas SVN limitados por archivos o directorios, tenga cuidado. El truco de revert no significa que fusionaste algunos archivos y no fusionaste otros: fusionaste todo, la reversión fue solo una especie de fusión.

Si desea mover algunos cambios de una rama a otra (por ejemplo, respaldar una corrección en un determinado subsistema a una antigua rama estable), no fusiona los archivos con la corrección; en su lugar, fusiona los conjuntos de cambios que contienen la corrección; hg graft te ayudará a hacerlo.