При использовании Git Flow для управления выпусками и разработками, как применить исправление задним числом? - PullRequest
0 голосов
/ 04 мая 2018

В настоящее время мы используем Git Flow для применения исправлений к нашей выпущенной версии нашего программного обеспечения, а также для внутренней версии разработки. Процесс работает довольно хорошо - кодировщик заранее решает, должна ли проблема быть в действующей версии ASAP, и создаст ветку исправлений перед фиксацией их кода, который будет объединен с development и master.

Однако, иногда фиксация с исправлением какой-либо проблемы оказывается большой проблемой, которую мы хотим в ветке live master. Как мы делаем это правильно прямо сейчас?

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

Насколько я понимаю, коммиты на черрикование веток, вроде master, в конечном итоге вызовут некоторые болезненные конфликты слияний позже, когда кто-то попытается слиться в разработке для выпуска функции, не так ли?

Ответы [ 2 ]

0 голосов
/ 04 мая 2018

Однако в некоторых случаях коммит с исправлением какой-либо проблемы оказывается большая проблема и одна, которую мы хотим в ветке master master. Как у нас дела это правильно прямо сейчас?

-> По любой причине, никогда не передавайте напрямую в ветку master, даже если срочно требуется команда разработчиков.

Лучшие практики для подражания

Требуется всего несколько секунд, чтобы разветвить новую (исправленную) ветку, нужно всего несколько секунд, чтобы объединить ветку с исправлением обратно в master ветку. Вам нужно пересмотреть, зафиксировать, снова зафиксировать, модульное тестирование, интеграционное тестирование и т. Д., Прежде чем вернуться к ветви master.

См enter image description here

Источник: https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow

И посмотрите известный пост: http://nvie.com/posts/a-successful-git-branching-model/

0 голосов
/ 04 мая 2018

в конечном итоге приведет к некоторым болезненным конфликтам слияния позже, когда кто-то попытается слиться в разработке для выпуска функции, не так ли?

Правильно. Это может быть не тот случай, если изменение будет точно таким же, тогда не будет никакого конфликта. Но довольно часто встречаются и плохие, которые имеют одинаковые изменения с обеих сторон.

неоднократно говорили о gitflow, что сам master должен быть объединен с develop, как только появится что-то новое. Это помогло бы и в этом случае. Или же вы можете просто сразу же добавить исправление, выбранное для разработки, просто чтобы не откладывать разрешение конфликта.

Если конфликты все еще трудно разрешить, вы можете сначала вернуть исправление в мастер. Просто убедитесь, что вы действительно выбрали master

...