При слиянии с MercurialEclipse возникают конфликты, которые разрешаются автоматически при слиянии в командной строке

Я играю с Mercurial, чтобы увидеть, подходит ли он для использования в нашей компании. Одним из главных достоинств этого является возможность слияния. Итак, я экспериментировал с созданием веток и объединением их обратно в строку по умолчанию. Тестируемые включали простое добавление нового метода (methodA) в один файл Java в одной ветке и добавление другого метода (methodB) в совершенно другое место в том же файле в другой ветке.

Когда я впервые попробовал его в Eclipse, используя опцию team-> merge, я обнаружил, что первое слияние сработало нормально (т.е. добавлен метод A). Когда я пытаюсь объединить вторую ветку, она сообщает мне, что есть конфликт, который я должен разрешить. Это очень прискорбно, так как я думал, что этот простой вид слияния был именно тем, с чем должен был справиться Mercurial?

Я попробовал точно такой же тест, используя командную строку, и на этот раз он сработал нормально, т.е. слияние прошло успешно, конфликты разрешать не нужно. Глядя на вывод консоли в eclipse, он использует следующую команду для выполнения слияния:

hg -y merge --config ui.merge=internal:fail -r 611ca2784593525cdafd3082b17d3310037a5d58 -f

, тогда как когда я сам запускаю ее из командной строки, я просто выполняю:

hg merge -r 1234

Используется ли стратегия слияния 'internal: fail' заставляя это происходить в Eclipse ?? И если да, то можно ли изменить поведение по умолчанию, чтобы оно работало так же, как в командной строке?

5
задан DaveJohnston 10 January 2011 в 14:15
поделиться