Al fusionar cambios conflictivos usando hg merge
, Mercurial inserta un conjunto de marcadores en los archivos que se fusionarán en mi copia de trabajo de la siguiente manera:
<<<<<<< local
version = 0.2
=======
version = 0.1
>>>>>>> other
Luego edito manualmente todos los archivos marcados como U de una lista producida por hg resolve --all -l
y luego le digo a Mercurial que los he resuelto porhg resolve -m file1 file2 file3 ...
En muchas situaciones, sin embargo, me gustaría aceptar los cambios solo para mí o para ellos en algunos archivos conflictivos. Me refiero a crear dos simples sed / awk / lo que sea guiones nombrados accept-theirs.sh
y accept-my.sh
o ¿hay alguna manera "correcta" de hacerlo?
hg help merge-tools
(mergetools es un alias en las últimas versiones)[alias] mine = resolve -t internal:local theirs = resolve -t internal:other
.hgrc
, para los novatos:[alias]
entoncesmine = resolve -t internal:local
, entoncestheirs = resolve -t internal:other
. Después de eso, puede usarhg mine some_file.py
ohg theirs -a
(para todos)--re-merge
bandera (phg resolve -t internal:other --re-merge --all
. Ej. )Prueba esto:
Consulte también
hg help merge-tools
para obtener más información.fuente
resolve
para archivos individuales / rehacerlo. (Además, las citasinternal:other
son innecesarias)