Вопрос

В настоящее время я работаю над проектом в .NET, который состоит из нескольких логических слоев и нескольких передних конечностей. Вот грубое представление нашей структуры SVN:

trunk
---doc
---lib
---src
------console
---------console.vbproj
------domain
---------domain.vbproj
------...
------web
---------web.vbproj
---.sln

Все наше повседневное развитие происходит в багажнике - именно здесь все разработчики оформить заказ от / посвящены.

Я ищу способ чисто и легко развертываться между средами (тестированием и производством).

Моя мысль состоит в том, чтобы создать две ветви, тестирование и производство, от багажника - решение и все. Я оправдываю это себе по следующим причинам:

  1. У меня есть полный контроль над тем, какие модификации поступают в какую среду, только слияние от багажника до тестируемой ветви и от тестируемой ветви к производственной ветви
  2. Я могу легко увидеть, какой код выполняется в каждой среде, просто глядя на журнал соответствующей ветви в Subversion

У кого-нибудь есть какой-то опыт работы с решением, похожим на это? Есть ли какие-либо потенциальные подводные камни или надзоры, которые мне не хватает?

Это было полезно?

Решение

У кого-нибудь есть какой-то опыт работы с решением, похожим на это?

Да :-)

Есть ли какие-либо потенциальные подводные камни или надзоры, которые мне не хватает?

Вы столкнетесь с проблемой, с которыми со временем тестирование и отделение выпуска будут отсекать от среды разработки, как вы, скорее всего, не сможете объединить каждое изменение от багажника. Разработчики будут работать в немного другой среде, и вы будете тратить много времени, сохраняя ветки синхронизированными. Это известно как Анти-шаблон слияния.

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

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

Я надеюсь, что эти аспекты помогут вам в вашем решении. Ссылка также показывает много других анти-моделей. Иметь прочесть всем из них, может быть, вы узнаете некоторые извлеченные уроки и получит некоторые советы, чтобы решить ее лучше.

Другие советы

Мы используем ту же макет без каких-либо проблем. Обязательно используйте последнюю версию SVN. Версия до 1,5 не должна использоваться из-за отсутствия отслеживания слияния.

В сочетании с инструментом отслеживания ошибок, такими как Jira из Atlassian (я не спонсируется), ваша настройка становится еще более прозрачной.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top