Каков наилучший способ настройки нового проекта .NET? - PullRequest
7 голосов
/ 08 января 2009

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

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

Я знаю, что мне нужно:

  • Сервер сборки
  • Все материалы сборки / тестирования в репозитории SVN (включая схему БД)
  • Макет проекта, который способствует CI

Как вы, ребята, настраиваете свои проекты? Я хочу использовать MSBuild для своего сервера сборки, поскольку благодаря VS все уже настроено таким образом, но я также ищу советы о том, как следует размещать файлы, как размещать проекты в решении и т. Д. В моем нынешнем виде в моем решении около 5 проектов, один из которых - проект тестирования, содержащий все тесты для остальных моих проектов. Это предпочтительный метод?

Как насчет макета внутри вашего хранилища? Где вы храните вещи, связанные с БД? Спецификации и документы?

Используете ли вы какое-либо конкретное программное обеспечение для КИ или просто следуете мантре «Непрерывная интеграция - это скорее состояние души»?

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

Ответы [ 7 ]

6 голосов
/ 08 января 2009

Tree Surgeon - http://www.codeplex.com/treesurgeon

"Tree Surgeon - это генератор дерева разработки .NET. Просто дайте ему имя вашего проекта, и он за несколько секунд создаст дерево разработки для вас. Более того, ваше новое дерево имеет многолетнюю накопленную разработку сборки. опыт построен прямо в. "

5 голосов
/ 08 января 2009

Alex

Я бы посоветовал вам начать здесь: http://msdn.microsoft.com/en-us/library/ms998208.aspx

Это относится к рекомендациям Microsoft по структуре проекта. Судя по всему, вы действительно должны придерживаться архитектуры единого решения.

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

Ник.

4 голосов
/ 08 января 2009

Круиз-контроль - отличный продукт для непрерывной интеграции. Другой вариант, который немного «проще» настроить, - это Jet Brains TeamCity .

2 голосов
/ 08 января 2009

Я проголосую за круиз-контроль в качестве CI и отмечу, что CruiseControl.NET очень легко и просто интегрируется с MSBuild.

1 голос
/ 15 января 2009

Итак, я меняю свою структуру, когда учусь, но сейчас:

(SVN REPO)
/trunk
  MyProject  <-- solution & .build file (i use nant or msbuild)
    conf <-- IIS Settings etc go here
    docs <-- that documentation i never do
    lib <-- 3rd Party libraries eg ApplicationBlock,ASPNet MVC
    src
      Web
      Data
      Business
    test
      Web.Test
      Data.Test
      Business.Test  
    tools
      nant
      nunit
      moq
  Project2
    conf
    lib
    src
    test
    tools
/branches
/tags

Надеюсь, вы увидите мою структуру выше

0 голосов
/ 05 сентября 2013

Дженкинс - отличный продукт. Есть очень плагины и активное сообщество.

Полностью совместим с .NET. Поддержите машину рабами.

0 голосов
/ 08 января 2009

TeamCity - очень хороший CI-продукт, и он бесплатен для определенного количества проектов.

...