Подскажите пожалуйста. У меня есть ветка "девелоп" и ветка "релиз". Они существуют

параллелльно, и в них параллельно коммитится код.
В "девелоп" коммитятся новые фичи.
В "релиз" коммитятся багфиксы.
Как лучше сделать чтобы багфиксы из релиза попадали в девелоп?
Обычно советуют мержить "релиз" в "девелоп" после того как релиз выйдет в прод, но это не известно когда произойдёт. А багфиксы из "релиза" мне нужны в "девелоп" уже сейчас, потому что эти баги афектят новые фичи.

24 ответов

28 просмотров

делаешь всё правильно !

А процессом ветвления в проекте рулите лично вы?

Pêcheur- Автор вопроса
Serge L.
А процессом ветвления в проекте рулите лично вы?

в том числе я, могу что-то изменить если требуется

Pêcheur
в том числе я, могу что-то изменить если требуется

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

Pêcheur- Автор вопроса
Serge L.
Кто принял решение держать две параллельные ветки ...

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

Pêcheur
Начальство. Но это вроде бы логично: мы выделили н...

Начальство — инженеры или менеджеры? Если менеджеры, то они могут решить "надо релизить фичи скопом, при этом при багах делаем релизы с багфиксами". Скажите, вы ранее в этом чате уже спрашивали совета по текущей ситуации?

Pêcheur- Автор вопроса
Serge L.
Начальство — инженеры или менеджеры? Если менеджер...

нет, первый раз спрашиваю. Начальство - инженеры так решили.

Тогда начальство-инженеры и должно были определить, как багфиксы должны попадать и туда, и туда, раз они инженеры. В общем случае рецепт прямолинейно простой, как уже определили. При этом могут быть конфликты, когда вы будете делать очередной релиз, если патч фикса будет для веток дева-релиза разный. И тут возникают вопросы. Например, почему в случае бага вы не можете просто сделать багфикс в девелоп и зарелизить его? И как много багфиксов и фич у вас бывает между релизами?

Pêcheur- Автор вопроса
Serge L.
Тогда начальство-инженеры и должно были определить...

прямолинейно простой рецепт - это какой?

Pêcheur
прямолинейно простой рецепт - это какой?

Любой. У вас принято делать МРы? Делаете МРы.

Pêcheur- Автор вопроса
Serge L.
Любой. У вас принято делать МРы? Делаете МРы.

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

Pêcheur
То есть как только багфикс был вмержен в релизную ...

Это может привести к новым багам же. Если ветки по фичам уже разошлись (а они у вас расходятся), то фикс следует тестировать на обеих ветках. Плюс обнаружение бага в релизной ветке не гарантирует, что он будет и в девелопе. QA-инженерам в случае бага следует перепроверять обе ветки на наличие бага. И обе же ветки на факт починки бага.

Pêcheur
Начальство. Но это вроде бы логично: мы выделили н...

Эта модель изначально несостоятельна по следующей причине Если в девелоп замеджено будет 10 фич, а начальство хочет в следующий релиз половину из них, то может быть очень больно формировать новую релиз-ветку

˸̧̨ ͅBlack Akula˸̧̨ ͅ ̤ ̬̪
Эта модель изначально несостоятельна по следующей ...

Тут от начальства зависит. Я до сих пор не до конца понимаю, чем грозит релиз багфикса с частью новых фич.

Serge L.
Тут от начальства зависит. Я до сих пор не до конц...

У бизнеса часто бывают нюансы. Релиз некоторых фичей должен координироваться между департаментами или даже не дай бог 3д-пати партнёрами

Pêcheur- Автор вопроса

да не то что бы больно, скорее всего просто будет сделана ветка релиза, в которой будет 10 фич, а эти 5будут просто отключены в коде. То есть спрятать кнопку, не обрабатывать нажатие, и прочее

Pêcheur
да не то что бы больно, скорее всего просто будет ...

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

Pêcheur- Автор вопроса

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

Pêcheur- Автор вопроса
˸̧̨ ͅBlack Akula˸̧̨ ͅ ̤ ̬̪
Вот поэтому у нас девелоп - это релиз кандидат все...

у нас ветка релиз и работает как релиз-кандидат. Мы её выделям из девелопа, тестим в около-боевой среде, и когда всё ок, только после этого мержим в мастер и делаем тэг.

Pêcheur
у нас ветка релиз и работает как релиз-кандидат. М...

То есть у вас аж три долгоживущих ветки.

Serge L.
О, то есть вам знаком концепт фиче-флагов. Если в ...

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

Pêcheur- Автор вопроса
Serge L.
То есть у вас аж три долгоживущих ветки.

да, мастер - это прод, девелоп - это основна ветка куда сливаются все фичи, и релиз - живет не долго, мержится в мастер после тестирования

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

Обсуждают сегодня

Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Портфолио: Зовут меня Александр, мне 41 год. Город Киров. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github.co...
Magic
11
Подскажите, пожалуйста, где в backende, или не в нем можно дату поправить? Логирует действия не в том часовом поясе
Лео
7
Есть магистры regex в чате? Задача: нужно написать regex который мэтчит полные (без сокращений по типу ::1/128) ipv6 адреса кроме 2001:0df7:cef7:29f7:52f7:adf7:2cf7:4ff7, при ...
Илья
5
Приветствую всех, есть вопросик. Передали проект на OctoberCms, без инсталяшки в полуразвернутом виде, нужно было залить бекап бд, после залития бд, оказалось, что части строк...
Лео
14
Привет! Подскажите может кто сталкивался, при создании купона выходит вот в таком виде окно. Как поправить это?
Ruslan
4
Ребята, я за проф советом😅 По микросервисам. В монолите есть общие файлы для сервисов: фетчи, конфиги, либы, утилсы.. как при распиле правильно их поддерживать? Пока вариант д...
Александр Тарасюк
1
Помните я тут рассказывал про таролога программистку? Мне выдали новый мем
Magic
6
DataGrip не сканирует почему-то все таблицы, хотя раньше показывал их че за херня, сталкивались?
Magic
9
где собака, админ группы? нычкуется и боится проявить волю, в толерантность еще не наигрался? @yelizariev
Ognezar
61
Карта сайта