Кажется, что было бы лучше, если бы Вы действительно фиксировали сопровождаемый слиянием. Я немного удивлен, что update'ing даже позволяется, когда Ваша рабочая копия имеет изменения. Позволяет обновлениям в таких случаях стараться не иметь фиксации, которые имеют двух родителей, которые следуют из слияния?
Mercurial рекомендует записывать всю историю проекта. Если вы проделали некоторую работу в своем рабочем каталоге, почему бы не зафиксировать эти изменения, предоставив содержательное описание ваших результатов в виде сообщения фиксации, а затем объединить ваши результаты в основную ветку? Для других людей будет более ясно увидеть в двух отдельных наборах изменений то, что вы сделали как свою обычную работу , и то, что вы сделали только для разрешения конфликтов слияния .
Обычно дополнительный набор изменений слияния - это нормально, но иногда вы просто хотите перебазировать текущие изменения поверх основной ветки перед их фиксацией. Вы можете взглянуть на расширение rebase . Новая команда hg rebase
позволяет вам перебазировать уже зафиксированные изменения.
Я считаю, что hg update
попытается объединить ваши незафиксированные изменения:
Следующие правила применяются, когда рабочий каталог содержит незафиксированные изменения:
- Если ни один
-c / - check
и-C / - clean
не указаны, и:
если запрошенный набор изменений является предком или потомком родителя рабочего каталога, незафиксированные изменения объединяются в запрошенный набор изменений и объединенный результат остаются незафиксированными.
Если запрошенный набор изменений не является предком или потомком (то есть находится в другой ветви), обновление прерывается, а незафиксированные изменения сохраняются.- С параметром
-c / - check
обновление прерывается, а незафиксированные изменения сохраняются.- С параметром
-C / - clean
незафиксированные изменения отбрасываются, а рабочий каталог обновляется до запрошенного набора изменений.
Это позволит избежать ненужной фиксации (зарегистрированной в репозитории .hg
) для операции (hg update), которая касается только обновления вашего рабочего каталога .