2010-10-22 5 views
3

Какова лучшая стратегия ветвления и слияния для небольшой команды разработчиков, которая делает много параллельных разработок в одном проекте?Ветвление и слияние в TFS 2010

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

Я искал TFS Branching Guidance guide от codeplex и не могу понять, что является лучшим вариантом для нас.

Благодаря

ответ

4

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

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

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

Если вы все работаете на одной линии разработки, для вас может работать одна ветка разработки.

Нам потребовались месяцы, чтобы завершить нашу стратегию ветвления (для 14+ командных проектов, около 80 разработчиков и нескольких приложений). Я не ожидаю, что это займет довольно много времени для небольшой организации, но определенно потратить некоторое время на размышления об этом и подумать о привлечении некоторых внешних экспертов, чтобы дать вам руководство.

0

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

На мой взгляд, это все, что вы хотите, чтобы изолировать

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

  • Если вы выполняете параллельную разработку, потому что хотите поддерживать несколько выпусков, то вам нужно знать, сколько выпусков вам необходимо поддерживать (сколько выпусков, которые выставляются на производство, вам нужно поддерживать, сколько релизов у вас есть предварительная подготовка и т. д.). В этом случае советуем иметь филиал на выпуск, который вам нужен для поддержки Похоже, что для этой организации вам нужна стратегия ветвления.

Это также зависит от типа файлов, которые вы разветвляете. Если у вас есть файлы SSIS или SSRS (или любые другие файлы на основе XML), двоичные файлы или любые файлы, которые не являются легким текстом (в отличие от C#), тогда нелегко объединить файлы из двух разных ветвей. Затем вам нужно будет ручное участие, чтобы фактически объединить эти файлы!

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

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