Разрешение конфликтов: как принять "свои" изменения автоматически?
при слиянии конфликтующих изменений с помощью hg merge, Mercurial вставляет набор маркеров в файлы, которые будут объединены в моей рабочей копии следующим образом:
<<<<<<< local
version = 0.2
=======
version = 0.1
>>>>>>> other
затем я вручную редактирую все файлы, помеченные как U из списка, созданного hg resolve --all -l и тогда я говорю mercurial, что я разрешил их hg resolve -m file1 file2 file3 ...
во многих ситуациях я хотел бы, однако, принять либо мои-только или их-только изменения на некоторых конфликтующих файлов. Я думаю создать два простых sed / awk / что угодно скрипты с именем accept-theirs.sh и accept-my.sh или есть ли "правильный" способ сделать это?
2 ответов:
использовать
hg resolve -t internal:other --allпринять
theirsиhg resolve -t internal:local --allпринять
yours
попробуйте это:
hg merge --tool 'internal:other'см. также
hg help merge-toolsдля получения дополнительной информации.
Comments