Несколько веток разработки с git-flow - PullRequest
19 голосов
/ 20 декабря 2011

В настоящее время я много изучаю git-flow и пытаюсь выяснить, как использовать его для проектов, в которых я участвую.

Я посмотрел различные учебники по git-flow и яя довольно знаком с мерзавцемСледовательно, мне не нужны какие-либо советы по одному git, но непосредственно по рабочему процессу с git-flow.

Вот ситуация:

Когда я передаю версию (назовем ее 1.0),это становится разветвленным, и это нормально.Допустим, теперь я начинаю работать над 2.0, добавляя новые функции.И, конечно, я хочу объединить их с разработкой, как только я закончу.Теперь исправления на 1.0 - это хорошо, поэтому допустим, что я создаю несколько версий 1.0.1, 1.0.2 и т. Д. Все это также обновит ветвь разработки, что тоже приятно.До сих пор хлопотно, я могу самостоятельно разрабатывать функции для 2.0 и исправления для 1.0.x.

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

Есть простой способ справиться с этими 2.0 и1.1 меняется самостоятельно?

Есть несколько возможностей, которые я уже вижу:

  • создать новую ветку в позиции последнего релиза на Develop.Переместите разработку в эту позицию и переименуйте другую ветку разработки.Однако тогда эта ветвь не будет содержать никаких исправлений от 1.0.1 и т. Д.

  • Не объединять функции для 2.0, пока не будет сделано 2.0.Однако тогда мне пришлось бы оставить много незавершенных изменений открытыми до последнего момента.Также это не помогает, если выпущено 2.0 get и впоследствии запрашиваются изменения в 1.0.x.

Возможно ли это вообще с git flow?Т.е. основывать выпуски на более раннем выпуске, когда работа над новым выпуском уже началась или даже закончена?

Ответы [ 4 ]

5 голосов
/ 21 декабря 2011

Подробнее о «улучшенном git-flow»:

https://plus.google.com/109096274754593704906/posts/R4qkeyRadLR

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

ОБНОВЛЕНИЕ:

Я переписал - в форме блога:

http://dymitruk.com/blog/2012/02/05/branch-per-feature/

3 голосов
/ 20 декабря 2011

Возможно ли это вообще с помощью git flow?

Все возможно с использованием git-flow в качестве серии лучших практик, а не жесткого правила.Просто откройте ветки функций из ветки релиза 1.0 вместо ветки develop.

0 голосов
/ 16 января 2018

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

0 голосов
/ 04 декабря 2015

Я понимаю, что это старый вопрос, но я нашел довольно простой способ справиться с ним с моей стороны.

На моем сервере разработки у меня в основном две рабочие копии, одна для v1.0 и другая для v2.0.

Затем я создаю отдельную ветвь «разработки» для v2.0, и когда я запускаю «git flow init» в среде 2.0, я использую это как свою «ветку следующего выпуска».

Я уверен, что вы могли бы сделать то же самое для основной ветки, но для моих целей этого было достаточно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...