2012-01-30 2 views
2
рт.ст.

Вот сценарийGUI рестарт рт.ст. mergetool после слияния

1 
|\ 
| \ 
2 3 
|/
|/ 
4* 

Делая рт.ст. слияния, я попал в 4 *, где у меня есть конфликты в моих файлах. Так как я забыл упомянуть GUI инструмент, теперь я хочу, чтобы запустить графический инструмент

$ hg merge --tool meld 
abort: outstanding uncommitted merges 

Так что я не могу показаться, чтобы решить эту проблему без отката конфликта. Есть какой-либо способ сделать это?

В git я бы просто сделал git mergetool, и он будет загружать графический интерфейс в любое время.

ответ

2

Используйте hg resolve, чтобы перезапустить слияние. Вы можете сделать

$ hg resolve foo 

перезапустить слияние всего файла foo, или вы можете сделать

$ hg resolve --all 

перезапустить слияние с нуля. Используйте

$ hg resolve --list 

видеть прогресс вашего слияния - неразрешенные файлы помечаются с U.

+0

Перезапуск - это неправильное слово здесь, не так ли? Вы на самом деле не перезагружаете его, вы продолжаете его с того места, где оно было остановлено или прервано? –

+0

@ LasseV.Karlsen: когда вы используете 'hg resolve', вы действительно перезапускаете слияние с нуля (для этого конкретного файла). Это означает, что Mercurial будет выкапывать исходные три файла для трехстороннего слияния и снова запускать программу слияния. Раньше это было так, что 'hg resolve' без аргументов перезапускал общую marge - и выбрасывал любые файлы разрешенных вручную файлов! В этом случае мы прерываем предупреждение. –

Смежные вопросы