什么持续集成工具最适合C ++项目? [英] What continuous integration tool is best for a C++ project?

查看:396
本文介绍了什么持续集成工具最适合C ++项目?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Cruisecontrol和Hudson是两个流行的连续集成系统。虽然这两个系统都能够很好地进行自动化连续构建,但是它似乎更容易创建一个批处理或bash构建脚本,然后使用Windows调度程序或cron来安排构建。

Cruisecontrol and Hudson are two popular continuous integration systems. Although both systems are able to do the automated continuous builds nicely, it just seems a lot easier to create a batch or bash build script, then use Windows scheduler or cron to schedule builds.

有没有更好的持续集成系统可用于C ++项目?

Are there better continuous integration systems available for C++ projects? Or is just using a script and a scheduler the simpler way?

推荐答案

我们一直使用 CruiseControl 用于C ++项目上的CI。虽然这是我们使用ant的唯一的事情,Ant构建脚本CruiseControl只是启动我们正常的构建脚本,所以它是非常简单,我们没有真正需要更新它很长一段时间。因此,CrusieControl是基于Java的,事实上对我们来说并不是一个问题。

We have been using CruiseControl for CI on a C++ project. While it is the only thing we use ant for, the ant build script for CruiseControl just starts our normal build script, so it is very simple and we haven't really needed to update it in a long while. Therefore the fact that CrusieControl is Java based has not really been an issue at all for us.

使用巡航控制的主要好处是

The main benefits of using something like cruise control are


  • 一个很好的网页,显示版本状态

  • 每次构建后或构建失败后发送电子邮件

  • 在提交源代码控制系统后自动构建

  • 用于监控构建状态的firefox插件

  • 显示任何构建错误的输出


  • A nice web page showing build status
  • Email after each build or after failed builds
  • Automatically build after a commit to the source control system
  • A firefox plugin to monitor the build status
  • Shows the output for any build errors.
  • Shows what files have changed since the last build (good for seeing which developer broke the buid)

当然,你可以自己写一个脚本来做所有这一切,但为什么所有的工作?从长远来看,设置CruiseControl(或类似的东西)的额外初始成本可能远远低于维护和更新自定义CI构建脚本的成本。

Of course you can write a script yourself which does all of this, but why do all that work? In the long run the extra initial cost of setting up CruiseControl (or something similar) is probably much less than the cost of maintaining and updating a custom CI build script.

如果所有你需要的是启动一个日常构建和一个简单的脚本由cron启动足以满足您的需求,那么通过一切手段。然而,CI的优点之一是每次签入后都会得到一个构建状态报告。编写一个脚本来完成这项工作需要更多的工作,CruiseControl已经做到了。

If all you need is to launch a daily build and a simple script started by cron is sufficient for your needs then by all means do that. However, one of the advantages of CI is that you get a build status report after every check in. Writing a script to do that takes more work and CruiseControl already does it.

这篇关于什么持续集成工具最适合C ++项目?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆