7

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

我所有的项目都已经在 SVN 存储库中,我已经设置了错误跟踪软件,但我正在寻找的是使用测试、SVN 和构建服务器来布局新项目的最佳方式。我想为 CI 设置我们所有的新项目,但我不确定如何布置所有内容以使其尽可能顺利。

我知道我需要:

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

你们是如何设置项目的?我想为我的构建服务器使用 MSBuild,因为由于 VS,一切都已经以这种方式设置,但我也在寻找有关如何布置文件、如何在解决方案中布置项目等的提示。就目前而言,我的解决方案中有大约 5 个项目,其中一个是测试项目,其中包含我其余项目的所有测试。这是首选方法吗?

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

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

总的来说,我正在寻找有关以正确方式启动新项目的技巧,以便以后一切顺利进行,并且便于新开发人员熟悉。

4

7 回答 7

6

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

“Tree Surgeon 是一个 .NET 开发树生成器。只需给它您的项目名称,它就会在几秒钟内为您建立一个开发树。不仅如此,您的新树还拥有多年积累的构建工程经验,构建正确在。”

于 2009-01-08T18:28:47.050 回答
5

亚历克斯,

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

这涵盖了微软自己的项目结构建议。听上去,您确实应该坚持使用单一解决方案架构。

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

缺口。

于 2009-01-08T14:41:55.167 回答
4

Cruise Control是一款出色的持续集成产品。另一个“更容易”设置的选项是 Jet Brains 的TeamCity

于 2009-01-08T14:37:02.790 回答
2

我将投票支持 Cruise Control 作为 CI,并注意CruiseControl.NET与 MSBuild 完美且轻松地集成。

于 2009-01-08T15:53:14.663 回答
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

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

于 2009-01-14T21:24:13.237 回答
0

TeamCity 是一款非常优秀的 CI 产品,它对一定数量的项目是免费的。

于 2009-01-08T14:38:03.303 回答
0

Jenkins 是一个很棒的产品。有非常多的插件和活跃的社区。

与 .NET 完全兼容。支持机器从机。

于 2013-09-04T22:37:51.007 回答