Следует ли сначала объединить именованную ветку с веткой по умолчанию или наоборот? - PullRequest
13 голосов
/ 08 декабря 2011

У меня есть центральное репо и локальное репо. Репо имеет ветку «по умолчанию» и одну ветку с именем «mybranch». Если я работаю в указанной ветви и хочу иногда объединить свои изменения с настройками по умолчанию, а затем продолжить работу в указанной ветви, я должен сделать следующее:

  1. извлекать последние данные из центрального репо в мое локальное репо
  2. во время работы в mybranch выполните команду "hg merge default", чтобы объединить INTO mybranch по умолчанию
  3. совершить локально
  4. затем выполните "hg update default" и "hg merge mybranch", чтобы объединить mybranch INTO по умолчанию
  5. совершить локально
  6. подтолкнуть к центральному репо е OR

сделать то же, что и выше, но переключить # 2 с # 4? (чтобы я сначала слил mybranch INTO по умолчанию?

Ответы [ 2 ]

14 голосов
/ 09 декабря 2011

Вы пишете, что

хотите иногда объединять мои изменения с настройками по умолчанию, а затем продолжать работу в указанной ветви

Обычно вы не должны объединять ветку функции вветвь default, если функция не выполнена.Может быть, это то, что вы имели в виду?

Просто для справки, рекомендуемый рабочий процесс должен сделать

  1. Создать ветвь функции
  2. Работать там
  3. Регулярно (каждые пару дней) слияние меняется с default в ветку функций:

    1. hg pull, чтобы получать последние изменения от других разработчиков
    2. hg merge для интеграции последних изменений в вашу ветку функций
  4. Когда ветвь функций завершена, вы объединяете ее обратно в default:

    1. hg pull
    2. hg update default, чтобы оформить ветку, в которую вы хотите объединиться
    3. hg merge myfeature, чтобы выполнить объединение

Финальное слияние будет очень небольшим, поскольку регулярное слияние default в ветвь объекта гарантирует, что расстояние от двух головок ветви до общего предка очень небольшое.

7 голосов
/ 08 декабря 2011

То, как вы это делаете сейчас (сначала объедините default в mybranch) - мой предпочтительный способ.

Я склонен использовать ветви для изоляции изменений для определенной функции или рефакторинга, поэтому лучше всего регулярно вносить наборы изменений из default в указанную ветку. Таким образом, изменения в указанной ветви обновляются по отношению к ветви default.

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