Управление зависимостями / Командные проекты в Team Foundation Server 2010

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

  1. Базовый каркасный проект, который выполняется на сервере
  2. Консольное приложение, которое ссылается на базовую структуру dll.
  3. Веб-приложение, которое также ссылается на базовую структуру DLL.

TFS разделяет проекты на групповые проекты. Все эти три являются действительно отдельными "проектами", но последние два зависят от ссылки.dll. В мире Java вы можете настроить управление зависимостями, где базовая структура будет собираться и публиковаться в центральном репозитории в компании, а клиентские проекты можно извлекать отдельно и просто ссылаться на dll в репозитории, чтобы ни один проект не сломался.

Управляет ли TFS зависимостями? Должны ли эти три проекта создаваться в отдельных командных проектах или в одном и том же? Можете ли вы строить из командных проектов?

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

3 ответа

Решение

Проекты TFS Team несопоставимы с тем, что вы можете понимать как программный проект / решение. По сути, командный проект - это контейнер для множества вещей, которые вы хотите сохранить вместе.

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

НТН.
Томас

TFS довольно слаба, когда дело доходит до управления зависимостями, но если вы счастливы жить в одном файле решения, вы можете достаточно хорошо распределить проект между решениями, используя: File->Source Control->Add Project from Source Control..,

Таким образом, когда вы получаете решение, вы получаете все его проекты.

Недостатком является то, что вам придется все время тянуть и строить.

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

Зачем вам вообще нужно управление зависимостями в TFS?

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

Другие вопросы по тегам