CruiseControl .net(或任何CI服务器)可以做什么,MSBuild或NAnt不能做什么?

Ema*_*shi 2 msbuild nant continuous-integration

我问这个问题,因为我发现社区对各种构建引擎(如MSBuild和NAnt)的贡献确实包括了促进CI服务器的所有任务,比如从源代码控制获取版本,清理文件夹,更改构建号,发送电子邮件,等等...

是否只是因为它"监听"源控件存储库中发生的更改?还有什么我想念的?

Ste*_*ers 6

Grzegorz Oledzki链接了一个很好的资源来找到多个CI解决方案之间的差异,但应该注意的是,MSBuild的目的是专门将代码转换为二进制,并由CI软件用于构建源代码.确实,它可以做其他事情,但其大部分任务都在这个领域内.

除了你提到的关于收听回购的内容之外,一些CI服务器可以做各种各样的事情,比如^ 1:

  • 多代理构建(不仅仅是多核,msbuild可以做到这一点,但是多机)
  • 监控构建状态
  • 通知(电子邮件/短信/ rss/whatnot)
  • 指责破碎的构建
  • 行政特征
  • 支持XFD(极端反馈设备)
  • 自动部署

而且通常都来自一个方便的用户界面.

1并非所有CI软件都具有所有这些功能,它绝不是详尽无遗的,并且存在一些重叠.