代码之家  ›  专栏  ›  技术社区  ›  Alex Fort

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

  •  7
  • Alex Fort  · 技术社区  · 16 年前

    所以我刚开始负责我公司的项目(我们仍然只有2个人,但我们正在成长),我想以正确的方式建立我的项目。

    我的所有项目都已经在一个SVN报告中,我已经安装了bug跟踪软件,但是我正在寻找的是用测试、SVN和构建服务器来布局新项目的最佳方法。我想为CI建立所有新的项目,但我不确定如何将所有内容安排得尽可能顺利。

    我知道我需要:

    • 构建服务器
    • SVN报告中的所有构建/测试材料(包括DB模式)
    • 有助于CI的项目布局

    你们是如何建立项目的?我想为我的构建服务器使用msbuild,因为所有的东西都是通过vs设置的,但是我也在寻找关于如何布置文件,如何在解决方案中布置项目的提示,等等。就目前而言,我的解决方案中有大约5个项目,其中一个是包含其余所有测试的测试项目我的项目。这是首选方法吗?

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

    您是使用任何特定的CI软件,还是遵循“持续集成更像是一种精神状态”的咒语?

    总的来说,我在寻找让一个新项目以正确的方式离开地面的技巧,这样以后一切都会尽可能顺利进行,而且对新开发人员来说也很容易熟悉。

    7 回复  |  直到 11 年前
        1
  •  4
  •   cgreeno    15 年前

    Cruise Control 是一个持续集成的伟大产品。另一个比较容易设置的选项是JetBrains的 TeamCity .

        2
  •  6
  •   quimbo    16 年前

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

    “树外科医生是一个.NET开发树生成器。只要给它一个项目的名称,它就可以在几秒钟内为您建立一个开发树。不仅如此,您的新树还有多年积累的建筑工程经验。”

        3
  •  5
  •   Nick    16 年前

    亚历克斯,

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

    包括微软自己的项目结构建议。听上去,您确实应该坚持使用单一的解决方案体系结构。

    对于一个特定的CI平台,显然有几个选项可用。其中一部分归结为味道和功能。在网上搜索应该能给你大多数你需要的答案。

    尼克。

        4
  •  2
  •   MattK    16 年前

    我将把对巡航控制的投票作为第二个CI,并注意到 CruiseControl.NET 与msbuild非常好且容易集成。

        5
  •  1
  •   danswain    16 年前

    因此,我在学习过程中改变了自己的结构,但目前:

    (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
    

    希望你能看到我上面的结构

        6
  •  0
  •   Otávio Décio    16 年前

    TeamCity是一款非常好的CI产品,在某些项目中是免费的。

        7
  •  0
  •   Samuel Pereira    11 年前

    詹金斯是一个伟大的产品。有很好的插件和活跃的社区。

    完全兼容.NET。支撑机器从机。