Лучшая стратегия ветвления при непрерывной интеграции? - PullRequest
98 голосов
/ 28 февраля 2009

Какую стратегию ветвления лучше всего использовать для непрерывной интеграции?

  1. Ветвь релиза: развивайтесь на стволе, сохраняйте ветвь для каждого выпуска.
  2. Разветвление элемента: Разрабатывайте каждую функцию в отдельной ветви, объединяйте только однажды стабильную.

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

Ответы [ 12 ]

0 голосов
/ 01 апреля 2014

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

  • Если вы используете Subversion, придерживайтесь опции 1 и освобождайте от веток.
  • Если вы используете GIT, вариант 2 будет хорошо работать для вас.
0 голосов
/ 28 февраля 2009

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

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

ps. Где вы взяли эти подходы? - не чувствует, что эти графики представляют все варианты

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

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