Действительно ли это - плохая идея обновлению hg, когда Ваша рабочая копия имеет изменения?

Кажется, что было бы лучше, если бы Вы действительно фиксировали сопровождаемый слиянием. Я немного удивлен, что update'ing даже позволяется, когда Ваша рабочая копия имеет изменения. Позволяет обновлениям в таких случаях стараться не иметь фиксации, которые имеют двух родителей, которые следуют из слияния?

7
задан allyourcode 18 April 2010 в 04:56
поделиться

2 ответа

Mercurial рекомендует записывать всю историю проекта. Если вы проделали некоторую работу в своем рабочем каталоге, почему бы не зафиксировать эти изменения, предоставив содержательное описание ваших результатов в виде сообщения фиксации, а затем объединить ваши результаты в основную ветку? Для других людей будет более ясно увидеть в двух отдельных наборах изменений то, что вы сделали как свою обычную работу , и то, что вы сделали только для разрешения конфликтов слияния .

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

2
ответ дан 7 December 2019 в 12:17
поделиться

Я считаю, что hg update попытается объединить ваши незафиксированные изменения:

Следующие правила применяются, когда рабочий каталог содержит незафиксированные изменения:

  1. Если ни один -c / - check и -C / - clean не указаны, и:
    если запрошенный набор изменений является предком или потомком родителя рабочего каталога, незафиксированные изменения объединяются в запрошенный набор изменений и объединенный результат остаются незафиксированными.
    Если запрошенный набор изменений не является предком или потомком (то есть находится в другой ветви), обновление прерывается, а незафиксированные изменения сохраняются.
  2. С параметром -c / - check обновление прерывается, а незафиксированные изменения сохраняются.
  3. С параметром -C / - clean незафиксированные изменения отбрасываются, а рабочий каталог обновляется до запрошенного набора изменений.

Это позволит избежать ненужной фиксации (зарегистрированной в репозитории .hg ) для операции (hg update), которая касается только обновления вашего рабочего каталога .

3
ответ дан 7 December 2019 в 12:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: