2011-02-04 2 views
0

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

Проблемы система нового ветвления, что мы имеем в виду принять в ближайшем будущем. На работе мы разрабатываем первичные веб-приложения (электронная торговля, cms, классифицированные, специальные цели) и некоторые веб-сайты в php, а наш vcs - svn.

Это новая модель, которую мы хотим принять:

Магистральные: всегда развитие

Балетмейстер (филиал): филиал создан для тестирования новых возможностей на удаленном эмбиента (ту же систему что у живого есть, действительно тот же сервер ..)

(branch): branch for live.

Другие отрасли для разработки параллельных функций.

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

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

Сейчас стратегия:

Магистральные: это живая версия

Отделение для каждая функция

Живая багфикс сделано, чтобы ствол затем толкнул ветви

Staging - это рабочая копия, которая переключается на ветвь в конце разработки перед слиянием обратно в багажник.

Но этот метод имеет ряд недостатков:

  • всегда переключение ..

  • нет возможности протестировать два параллельных ветвей

Что вы думаете о новой стратегии ?

+1

Вы рассмотрели git-flow? http://nvie.com/posts/a-successful-git-branching-model/ – ceejayoz

+0

Не собираетесь ли вы просто объединиться с Trunk to Staging, выполнить свой QA, а затем снова слиться в Live и развернуть оттуда? –

ответ

0

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

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

Вы не говорите, какую систему управления версиями вы используете, но у большинства из них есть предлагаемая стратегия (http://svnbook.red-bean.com/en/1.0/ch05s04.html#svn-ch-5 -sect-6.1), например.

+0

мы используем svn; я обновил сообщение – apelliciari

Смежные вопросы