Мерзавец, переходящий / перебазирование хороших методов

У меня есть следующий сценарий:

3 ответвления:
- Ведущее устройство
- MyBranch отклонился Ведущее устройство в целях разработки новой возможности системы
- MyBranchLocal отклонился MyBranch как моя локальная копия ответвления

MyBranch является перебазирующимся против и продвигается к другими разработчиками (кто работает над той же функцией, как я).

Как владелец MyBranch переходят, я хочу сохранить его в синхронизации с Ведущим устройством путем перебазирования. Я также должен объединить изменения, которые я вношу в MyBranchLocal с MyBranch.

Что хороший путь состоит в том, чтобы сделать это?

Несколько возможных сценариев я попробовал до сих пор:

I.
1. Передайте изменение в MyBranchLocal
2. Повторно основывайте MyBranch против ведущего устройства
3. Повторно основывайте MyBranchLocal против MyBranch
4. Объедините MyBranch с MyBranchLocal

II.
1. Передайте изменение в MyBranchLocal
2. Объедините MyBranch с MyBranchLocal
3. Повторно основывайте MyBranch против ведущего устройства
4. Повторно основывайте MyBranchLocal против MyBranch

III.
1. Передайте изменение в MyBranchLocal
2. Повторно основывайте MyBranch против ведущего устройства
3. Объедините MyBranch с MyBranchLocal
4. Повторно основывайте MyBranchLocal против MyBranch

Я уже знаю, что сценарий III, кажется, портит историю фиксации много, потенциально копируя фиксации.

Каков Ваш опыт? Какие сценарии Вы рекомендуете минимизировать объединяющееся усилие и содержать историю в чистоте?

9
задан Paweł Krupiński 8 April 2010 в 20:28
поделиться

1 ответ

Мое личное предложение. Этот ориентирован на то, чтобы иметь прямую историю коммитов и терпеть неудачу в «более конкретных» ветвях (вам лучше испортить свою локальную ветку, чем функциональную ветку).

  1. Подтвердить изменение MyBranchLocal
  2. Rebase MyBranchLocal против MyBranch
  3. Объединить MyBranch с MyBranchLocal (должно быть быстро вперед) - MyBranch = Local
  4. Rebase MyBranch против Master
    1. (необязательно) Мастер слияния с MyBranch (также следует выполнять перемотку вперед)
  5. Перебазировать MyBranchLocal на MyBranch
4
ответ дан 4 December 2019 в 22:28
поделиться
Другие вопросы по тегам:

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