Как добавить исправление в ветку релиза с помощью git flow/hubflow

В нашем проекте мы следуем модели репо в соответствии с http://nvie.com/posts/a-successful-git-branching-model/ .

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


person jay    schedule 10.07.2014    source источник


Ответы (2)


Одним из основных моментов ветвей выпуска является возможность исправления незначительных ошибок. Таким образом, пока ветка релиза активна, вы можете вносить исправления непосредственно в ветку релиза.

После того, как ветка релиза завершена, т. е. релиз сделан, она объединяется с мастером. После этого коммиты больше не должны добавляться в ветку релиза. Скорее, срочные исправления ошибок, сделанные после выпуска, являются исправлениями и должны быть объединены в мастер. (Несрочные исправления ошибок могут быть созданы как функции, объединены в ветку разработки и выпущены позже)

Концептуально ветвь релиза "мертва" после того, как релиз был сделан. Постоянно живут только ветки master и development.

Вы, конечно, можете иметь другой процесс, но тогда вы не будете строго следовать модели git-flow.

person Klas Mellbourn    schedule 10.07.2014


думая, что ветка релиза отличается от основной ветки, здесь возникает проблема :).

Обычный поток:
разработка -> подготовка -> мастер. Затем вы делаете релиз и тегируете его (v0.1)

Последовательность оперативных исправлений:
A -> B-> C

A: разработка -> подготовка -> мастер (v0.1)


B : master -> ветка релиза (это ответвление от master)
(здесь мы применяем исправление и делаем релиз, пометьте его здесь) (v0.1)


C : ветка выпуска -> разработка (объединение этих исправлений обратно для разработки)

Цикл начинается снова как нормальный поток с новым номером версии (v0.2)

разработка -> постановка -> мастер.

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

Надеюсь это поможет :).

person Narasimha    schedule 10.07.2014