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 ceci:
<<<<<<< local
version = 0.2
=======
version = 0.1
>>>>>>> other
Ensuite, je modifie manuellement tous les fichiers marqués comme U à partir d'une liste produite par hg resolve --all -l
puis je dis à mercurial que je les ai résolus parhg resolve -m file1 file2 file3 ...
Dans de nombreuses situations, je voudrais cependant accepter mes modifications uniquement ou leurs seules modifications sur certains fichiers en conflit. Je pense créer deux simples scripts sed / awk / quel que soit le nom accept-theirs.sh
et accept-my.sh
ou y a-t-il une manière "appropriée" de le faire?
hg help merge-tools
(mergetools est un alias dans les dernières versions)[alias] mine = resolve -t internal:local theirs = resolve -t internal:other
.hgrc
, pour les débutants:,[alias]
alorsmine = resolve -t internal:local
, alorstheirs = resolve -t internal:other
. Après cela, vous pouvez utiliserhg mine some_file.py
ouhg theirs -a
(pour tous)--re-merge
drapeau (par exemplehg resolve -t internal:other --re-merge --all
)Essaye ça:
Voir aussi
hg help merge-tools
pour plus d'informations.la source
resolve
pour des fichiers uniques / le refaire. (De plus, les citations neinternal:other
sont pas nécessaires.)