Я пытаюсь реализовать рабочий процесс типа «git-flow» с использованием Gerrit, но, похоже, не могу разгадать последний кусок головоломки.
У моей проблемы есть два предварительных условия:
. Я хочу решить следующее. Рассмотрим эту ситуацию с git:
Master 0
\
\
Develop 0-----0-----0-----0
Существует основная ветвь с одним коммитом и ветвь разработки, которая разветвляется от мастера с несколькими дополнительными коммитами. Через некоторое время ветвь разработки снова объединяется с основной для создания следующего производственного выпуска.Разработчики работают с тематическими ветками от develop и со строгим ребазингом. Их коммиты всегда перед запуском обновляются на основе последних разработок. Это должно привести к линейной истории и только быстрой перемотке вперед.
Теперь предположим, что кто-то создает ветку исправлений из мастера и выполняет слияние обратно в мастер:
Master 0--------0 HF
\
\
Develop 0-----0-----0-----0
Эта фиксация теперь объединена только с основной веткой, но разработчикам требуется эта фиксация в своей ветке разработки, чтобы включить исправление в свои изменения. Обычно вы объединяете основную ветвь для разработки ветки разработки, но, учитывая мои предварительные условия, это невозможно, так как при этом создается локальная фиксация слияния.
Мой вопрос: как мне включить новые коммиты из основной ветки в локальную ветку разработки, чтобы любые новые изменения, внесенные разработчиками, содержали исправление? В идеале я бы изменил свой сценарий, чтобы сначала применить исправления ошибок к локальной ветке разработки (слияние, но без фиксации слияния), а затем переустановить коммиты разработчика и нажать. Таким образом, исправление будет автоматически добавлено к их новым изменениям и будет рассматриваться как часть их новых коммитов, а не отдельная фиксация.
Я думал о возможных решениях:
Надеюсь, мой вопрос ясен. Пожалуйста, дайте мне знать, если это потребует дополнительных разъяснений. Я знаю, что очень жестко отношусь к своему рабочему процессу, но это было бы идеально в сочетании с Герритом. Если это невозможно сделать, я, вероятно, разрешу слияние коммитов ...