Полагаю, вы имеете в виду, что используете SourceGear DiffMerge в качестве внешнего инструмента слияния. Какой у тебя .hgrc
? Это основано на образце с сайта hg ?
Я думаю, что ваш diffmerge.args
проблематичен. Вы можете попробовать запустить diffmerge вручную с этими аргументами, чтобы убедиться, что он работает.
С вашим .hgrc
теперь все ясно. Ваша команда hg diffmerge -r 32 -r 30 myfile
НЕ является командой слияния, вместо этого вы просите hg использовать diffmerge в качестве внешнего инструмента сравнения (указан в разделе [extdiff]
) для сравнения myfile
между версиями 32 и 30. Третья версия не используется .
Для слияния вы запускаете hg merge [-r<the other head>]
, и поскольку ваш .hgrc
говорит hg использовать diffmerge в качестве инструмента слияния (указан в разделе [ui]
), hg будет использовать diffmerge для 3-стороннего слияния. Я проверил, что это работает в моей установке Windows с идентичным hgrc.