我当前使用通过”http://ankhsvn.open.collab.net/“rel=”nofollow noreferrer“>AhnkSVN和Visual Studio。我最近开始使用Tree Surgeon来设置我的项目。它使用NAnt。我希望能够在SVN中定期自动化构建项目。我喜欢在每次签入时进行构建的想法,但夜间构建也可以。我会提供更多信息或更多想法,但我想我会把它放在一边,看看SO社区会怎么说。
您可以使用CruiseControl.NET,它可以在每次入住、夜间构建或您想做的任何事情上进行构建。快速谷歌搜索表明CC.NET有一些已与NAnt集成。
正如其他人所提到的,我们在这里使用CCNET,我们通常不在夜间构建中使用它,而是使用连续集成策略(每次签入)。
我建议你也这样做,无论是自己还是在团队中,因为你可以很容易地设置单元测试,以便在每次签入、FXCop测试和许多其他产品上运行。
如果只有你在一个人的团队中,并且你没有太多的项目要做,我也建议你去看看Team City作为一个选项,因为它有一个免费版本,而且据报道报告和设置要简单得多(在我看来确实不错)。
也就是说,我们从CCNET开始,已经开发了一些太大的产品,无法在免费版本上查看Team City,并且对我们所拥有的非常满意。
有助于CCNET的功能包括:
- XML based configuration - you can usually copy and paste most of what you need.
- More or less you ll be able to plug your treesurgeon script in as your build script, and point CCNET at that as an executable task to run the compilation.
- Lots of documentation and very easy to set up nunit, ncover, fxcop, etc.
- Taskbar app that will let you know the status of your projects at any time, and it can also fire off an email or keep an RSS feed with the same information.
但我肯定会在每次签入时运行CI构建-在大多数情况下,我会在签入前运行单元测试,但让CCNET服务器处理运行任何依赖于我们正在签入的程序集的应用程序/程序集,然后重新构建它们,并在每次签出时重新测试。
考虑到它是免费的,而且安装起来只需很少的时间,我强烈建议你去买。
在我看来,CruiseControl.NET是您的最佳选择。如果需要,可以很容易地使用自定义任务进行扩展,可以开箱即用地使用NAnt和MSBuild,并且维护非常积极。
我建议团队城市。:)
我非常喜欢buildbot。它是开源的,用python编写,非常容易部署、开发和维护。它可以很容易地与svn和大多数其他源代码控制系统集成。所有的构建脚本都是python代码,因此在核心build Master脚本的功能方面有很大的灵活性。当然,您也可以使用它来启动任何其他类型的脚本或批处理文件。
您可以查看一些buildbot的实际操作示例:
您可能需要考虑CI工厂。它是一个持续集成环境构建器,使用CruiseControl.NET和十几个其他工具。这里有一个出色的演员阵容:http://www.dnrtv.com/default.aspx?showID=64
我们将CruiseControl.NET与NAnt和MsBuild一起用于我们的构建服务器。我们对它进行了配置,以便每次我们签入代码时,它都会有构建,以及夜间构建。
Cascade支持在提交到存储库的每一个更改上进行构建。
我已经使用FinalBuilder好几年了。FinalBuilder的优势在于它所做的远不止是构建。我设置了它来对结果进行一些分析,对构建进行存档,发送错误日志等。最新版本有一个网络界面,不允许专家点击即可启动构建。
- winforms
- combobox
- fogbugz
- java
- date
- internationalization
- asp.net
- iis
- url-rewriting
- urlrewriter
- c#
- enums
- ocaml
- haxe
- algorithm
- string
- viewstate
- .net
- c++
- c
- symbol-table
- mysql
- database
- postgresql
- licensing
- migration
- vb.net
- vb6
- declaration
- vb6-migration
- python
- psycopg2
- backup
- vmware
- virtualization
- gnu-screen
- authentication
- desktop
- excel
- xll
- cultureinfo
- regioninfo
- oracle
- client
- session
- download
- html
- virtual
- constructor
- scenarios
- perl
- full-text-search
- javascript
- ajax
- testing
- oop
- inheritance
- vim
- encapsulation
- information-hiding