msbuild - CruiseControl .net(或任何 CI 服务器)可以做什么 MSBuild 或 NAnt 不能做的事情?

标签 msbuild nant continuous-integration

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

这仅仅是因为它“监听”源代码控制存储库上发生的更改吗?我还缺少什么?

最佳答案

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

除了您提到的监听存储库之外,一些 CI 服务器还可以执行各种操作,例如 ^1:

  • 多代理构建(不仅仅是多核,msbuild 可以做到,而且是多机)
  • 监控构建状态
  • 通知(电子邮件/短信/RSS/诸如此类)
  • 为损坏的构建分配责任
  • 管理功能
  • 支持 XFD(极端反馈设备)
  • 自动部署

通常都是通过方便的用户界面实现的。

1 并非所有 CI 软件都具有所有这些功能,这绝不意味着详尽无遗,并且存在一些重叠。

关于msbuild - CruiseControl .net(或任何 CI 服务器)可以做什么 MSBuild 或 NAnt 不能做的事情?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3097118/

相关文章:

powershell - 为 nuget 创建自定义 powershell 脚本,将自定义目标添加到 csproj BeforeBuild 步骤

asp.net - dotnet 构建不包括文本文件资源内容

.net - 如何将 2 个参数传递给 Nant 脚本?

jenkins - 如何使用 jenkinsfile 为 Windows 中的管道作业进行 Nant 构建?

ios - Xcode 10,iOS : Test build failed even when all Tests have passed

java - 如何为不在设备或模拟器上的 Android 运行单元测试?

visual-studio-2015 - 代码分析增加构建时间

msbuild - 为什么我们每次都会增加构建号,即使是夜间构建?

带有数据和时间戳的 nant 日志

continuous-integration - DialogFlow (API.AI),如何使用命令行部署/上传 JSON 以与 CI 一起工作?