Постоянное слияние с Mercurial - обычная практика?Что-то не так с этим рабочим процессом? - PullRequest
6 голосов
/ 30 июля 2010

Моя компания переходит на Mercurial, и мы переходим из Subversion.

Мы замечаем, что нам нужно сделать МНОГО слияния в нашем рабочем процессе.Например, если я изменяю файл, фиксирую, извлекаю, обновляю, толкаю, а затем мой коллега меняет файл, фиксирует, извлекает и обновляет, он получает ошибку «пересекает ветви» и должен выполнить слияние hg.Нам приходится делать это почти каждый раз, когда мы хотим перенести в наш центральный репозиторий.

Что-то не так с нашим рабочим процессом ??Кажется неправильным, что в нашей истории для данного файла будет множество записей истории, которые говорят: «Слияние с [ID изменения набора]» «Слияние с [изменения ID изменения]».

Это толькотак оно и есть?Или мы что-то не так делаем?

Ответы [ 3 ]

4 голосов
/ 30 июля 2010

В этом нет ничего плохого. Подавляющее большинство слияний должно быть автоматическим. Вы создали две головы, когда вы оба внесли изменения, исходящие из одной и той же ревизии и идущие в разных направлениях - ваши изменения могут или не могут конфликтовать.

Если вы хотите устранить «слияние» наборов изменений (которые на самом деле не являются проблемой), вы можете изменить / pull / rebase / commit / push вместо change / commit / pull / merge / commit. Другими словами, перед тем как вносить изменения, перенесите их на новый совет.

1 голос
/ 30 июля 2010

Это часто встречается, поскольку вам действительно нужно привести свои репозитории в согласованное состояние.Одна вещь, которая ускоряет его, это вместо

hg pull; hg update

использовать fetch

hg fetch

Это будет разумно делать подтягивание, а не обновление или слияние.Он поставляется с Mercurial, так что в основном вам нужно отредактировать ваш .hgrc, добавив в него строку вроде:

[extensions]
hgext.fetch=

Если слияние прошло без ошибок, вы даже не заметите, что это происходит.Это помогло мне в работе.

1 голос
/ 30 июля 2010

Если слияния выполняются без ручного разрешения слияния, то я бы сказал, что Mercurial и ваш рабочий процесс ведут себя как задумано.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...