Team Foundation Server - руководство программиста - PullRequest
15 голосов
/ 22 декабря 2009

В дополнение к моей предыдущей теме

Как использовать SVN, Branch? Тег? Магистральные

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

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

Итак, вот мои интересы, о которых я хотел бы узнать больше:

  • Как бы вы структурировали рабочее пространство / проект TFS для поддержки множества разных клиентов / проектов и, возможно, разных проектов для каждого клиента?
  • Разделение структуры папок в вышеупомянутом проекте на различные части, такие как, Код, Документы -> Архитектура, Требования и прочее, что еще может быть и какова будет хорошая обычно используемая структура папок?
  • Удобный для просмотра репозиторий; Опять же, здесь важна структура папок, однако этот пункт больше ориентирован на разных исследователей для хранилища, а не только на встроенный Team Foundation Explorer.

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

Ответы [ 3 ]

13 голосов
/ 02 января 2010

Как уже упоминалось, руководство «Шаблоны и практики» - отличное руководство для использования TFS.

http://www.codeplex.com/TFSGuide

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

Если вы в конечном итоге столкнетесь с конкретными вопросами, которые не описаны выше, имейте в виду, что вы также можете обратиться за помощью к форуму TFS Version Control.

http://social.msdn.microsoft.com/Forums/en/tfsversioncontrol/threads

8 голосов
/ 22 декабря 2009

Вы ссылались на это руководство: http://www.codeplex.com/TFSGuide

Я только что написал руководство по TFS для нашей компании, и мы следовали большинству рекомендаций из этого руководства.

Структура, которую мы используем, такова:

TeamProject1
    Main
        Source
            ClassLibrary1
            ClassLibrary2
            CommonCodeLibrary
            TeamProject1Web
    Releases
        Release1
            Source
                ClassLibrary1
                ClassLibrary2
                CommonCodeLibrary
                TeamProject1Web
        Release2
            Source
                ClassLibrary1
                ClassLibrary2
                CommonCodeLibrary
                TeamProject1Web
TeamProject2
    Main
        Source
            ClassLibrary1
            CommonCodeLibrary
            TeamProject2Web
    Releases
        Release1
            Source
                ClassLibrary1
                CommonCodeLibrary
                TeamProject2Web
        Release2
            Source
                ClassLibrary1
                CommonCodeLibrary
                TeamProject2Web
SharedTeamProject //this would represent a set of code that's used in other team projects
    Main
        Source
            CommonCodeLibrary
    Releases
        Release1
            Source
                CommonCodeLibrary
        Release2
            Source
                CommonCodeLibrary

В основном мы разветвляем проект Main \ Source на ветку Releases \ Releasex, когда пришло время сделать релиз.

Для кода, который используется несколькими проектами, мы создаем отдельный командный проект для этого кода, а затем разделяем его на отдельные командные проекты. В приведенном ниже примере SharedTeamProject представляет общий код. Например, мы бы поделили CommonCodeLibrary на обучение папок Main \ Source для отдельных командных проектов.

Для специфичных для клиента выпусков вы можете просто создать соответствующие ветки для них.

Я думаю, главное - придумать схему, с которой ваша команда соглашается (в основном), понимает и желает следовать. Убедитесь, что эта схема хорошо задокументирована и соблюдается. Последовательность в структуре является одним из ключей к успешной системе контроля версий.

3 голосов
/ 22 декабря 2009

Вот что я думаю о ваших баллах:

  • Прежде всего, это уровень командного проекта. Лучше всего следовать рекомендации Microsoft здесь: физические команды имеют отдельные командные проекты. Для специфичных для клиента изменений я бы сделал дополнительные ответвления от ствола. Это позволяет объединять все исправления ошибок и независимые от клиента изменения в ветвях клиентов без особых хлопот.
  • Не помещайте документы в систему контроля версий, поместите их в папку «Документы», которую можно найти в Team Explorer. Для всей документации я бы сказал проверить Sharepoint.
  • Попробуйте сопоставить структуру папок с иерархией пространства имен. Это делает вещи чрезвычайно легко просматривать.

Помните, что настройка TFS действительно зависит от размера команд, количества команд и размера кодовой базы.

...