2013-03-25 2 views
2

Я использую Mercurial (с VisualHg) для моего исходного кода, и у меня есть следующая ситуация.Как создать новую «стабильную» ветвь в Mercurial

В настоящее время я использую ветвь по умолчанию и хотел бы следовать процедуре, приведенной в http://stevelosh.com/blog/2010/05/mercurial-workflows-stable-default/, чтобы создать новую стабильную ветвь.

Вот мои вопросы:

  1. я создал релиз, помечать его, а затем я хотел бы, чтобы переместить его в стабильную ветвь (которая в настоящее время не существует). Как я могу это сделать?
  2. У меня есть новая ветка, как мне создать две папки на моей машине, чтобы один из них имел значение по умолчанию, а другой - стабильные данные?

Я не уверен, правильно ли этот подход работает с Mercurial: я использовал VisualSVN. Спасибо.

ответ

5

Чтобы создать stable ветвь с помощью VisualHg выполните следующие действия:

  1. Нажмите Update для пересмотра кнопки в Visual Studio
  2. В Обновление до: выпадающего, выберите тег и затем нажмите Обновление
  3. Нажмите Заблокировать кнопка в Visual Studio
  4. Нажмите на Отрасли: по умолчанию кнопки выше фиксации сообщение
  5. Выберите Открой новый названный филиал, введите stable в поле рядом с ним и нажмите Ok
  6. Типа в соответствующем сообщении - возможно, «Создать стабильную ветвь»
  7. Нажмите кнопку Commit и подтвердите, что вы хотите создать новую ветку.

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

  1. Нажмите на Repo Browser кнопку в Visual Studio
  2. правой кнопкой мыши на последней ревизии на stable и нажмите Tag. .. во всплывающем меню
  3. Выберите тег из выпадающего списка
  4. Разверните раздел опций и проверить Заменить существующий тег (-f/- сила)
  5. Нажмите Переместить затем Закрыть

Если вы работаете с центральным хранилищем, то вам нужно указать, что вы хотите, чтобы нажать на новую ветку, нажав на Options кнопку в окне TortoiseHg Sync и пометке Разрешите нажимать новую ветку (-new-branch), прежде чем вы нажмете изменение.

В будущем вы слились бы с default в stable, а затем пометили stable, если хотите сделать еще один выпуск. Чтобы объединить изменения из default в stable сделать следующее:

  1. Нажмите на Repo Browser кнопку в Visual Studio
  2. Найти последние изменения в stable, щелкните правой кнопкой мыши и выберите Update ...
  3. Найти последние изменения в default, щелкните правой кнопкой мыши и нажмите Объединить с местными ...
  4. Нажмите
  5. Следующая страница может сообщить вам, что вам необходимо разрешить конфликты. Чтобы сделать это, нажмите на синий подчеркнутый , разрешенный и разрешите конфликты во всплывающем диалоге, выбрав конфликт в верхней части окна и нажав нужную кнопку справа.
  6. Следующая страница должна сказать «нет слияния конфликтов, готовы совершить» - нажмите Следующая
  7. сообщение по умолчанию или перезаписать свой собственный и нажмите Commit Теперь
  8. Нажмите Finish

слить в другую сторону, чтобы обновить default на первом этапе и слияние с stable на шаге 3.

Чтобы иметь две папки на вашем компьютере для одного, чтобы содержать default, а другой stable, вы бы просто клонировали репозиторий во второй раз и сохранили один из них в ветке default, а другой - в ветке stable.

+0

Большое спасибо за подробные инструкции, Стив. Они очень ценятся. Я смог настроить стабильную ветвь. Можете ли вы рассказать мне, как я собираюсь объединить изменения между двумя ветвями? Я предполагаю, что он должен делать оба (когда я делаю bugfix в стабильном, я должен переместить его на стандартный), и когда я делаю новый выпуск, я должен переместить его из значения по умолчанию в стабильное. –

+0

Я добавил детали слияния в ответ –

Смежные вопросы