web-dev-qa-db-fra.com

Résoudre les conflits: comment accepter "leurs" modifications automatiquement?

Lors de la fusion de modifications conflictuelles à l'aide de hg merge, Mercurial insère un ensemble de marqueurs dans les fichiers à fusionner dans ma copie de travail, comme suit:

<<<<<<< local
  version = 0.2
=======
  version = 0.1
>>>>>>> other

Ensuite, j'édite manuellement tous les fichiers marqués U à partir d'une liste produite par hg resolve --all -l puis je dis à Mercurial que je les ai résolus par hg resolve -m file1 file2 file3 ...

Dans de nombreuses situations, je souhaiterais toutefois accepter des modifications soit uniquement, soit uniquement, sur certains fichiers en conflit. Je pense créer deux scripts sed/awk/any simples nommés accept-theirs.sh et accept-my.sh ou existe-t-il un moyen "approprié" de le faire?

88
psihodelia

Utilisation

hg resolve -t internal:other --all

accepter theirs et

hg resolve -t internal:local --all

accepter yours

153
Noffls

Essaye ça:

hg merge --tool 'internal:other'

Voir également hg help merge-tools pour plus d'informations.

20
djc