设置新.NET项目的最佳方法是什么?

时间:2009-01-08 14:32:26

标签: .net msbuild installation project

所以我最近负责我公司的项目(我们仍然只有2个人,但我们正在成长),我想以正确的方式设置我的项目。

我的所有项目都已经在SVN回购中,我已经设置了错误跟踪软件,但我正在寻找的是使用测试,SVN和构建服务器布局新项目的最佳方式。我想为CI设置所有新项目,但我不确定如何将所有项目都放在一起,以便尽可能顺利。

我知道我需要:

  • 构建服务器
  • SVN仓库中的所有构建/测试材料(包括数据库架构)
  • 有利于CI的项目布局

你们是如何设置项目的?我想将MSBuild用于我的构建服务器,因为所有内容都已经通过VS设置,但我也在寻找有关文件应如何布局,如何在解决方案中布置项目的提示等。按照目前的情况,我在我的解决方案中有大约5个项目,其中一个是测试项目,其中包含我的其余项目的所有测试。这是首选方法吗?

您的存储库中的布局如何?你在哪里保存与数据库相关的东西?规格和文件?

您是否使用任何特定的CI软件,或者只是遵循“持续集成更像是一种心态”的口头禅?

总的来说,我正在寻找关于以正确的方式启动新项目的技巧,所以一切都会在以后顺利进行,以及新开发人员很容易熟悉。

7 个答案:

答案 0 :(得分:6)

树外科医生 - http://www.codeplex.com/treesurgeon

“Tree Surgeon是一个.NET开发树生成器。只需将它命名为您的项目,它将在几秒钟内为您设置开发树。更重要的是,您的新树具有多年积累的构建工程经验建立在。“

答案 1 :(得分:5)

亚历,

我建议你从这里开始:http://msdn.microsoft.com/en-us/library/ms998208.aspx

这涵盖了微软自己的项目结构建议。通过它的声音你应该确实坚持单一的解决方案架构。

就特定的CI平台而言,显然有几种选择。其中一些归结为品味和功能。搜索网络应该可以为你提供所需的大部分答案!

尼克。

答案 2 :(得分:4)

Cruise Control是持续整合的绝佳产品。另一个有点“更容易”设置的选项是Jet Brains的TeamCity

答案 3 :(得分:2)

我将巡回控制作为CI的第二次投票,并注意CruiseControl.NET非常好地与MSBuild集成。

答案 4 :(得分:1)

所以我改变了我的结构,但目前正在改变:

(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

希望你应该看到上面的结构

答案 5 :(得分:0)

TeamCity是一个非常好的CI产品,它对于一定数量的项目是免费的。

答案 6 :(得分:0)

詹金斯是一个很棒的产品。有很多插件和活跃的社区。

完全符合.NET。支持机器从属。

相关问题