There are many Continuous Integration systems available. This page is an attempt to keep an unbiased comparison of as many as possible of them. The goals are:
- Make it easier to choose an appropriate CI tool for your project.
- "Healthy competition aid" for the people involved in the development of these various CI systems.
Note: In order to be as neutral as possible, it would be favourable if this page was hosted somewhere else, in a publicly available place. Let us know if you have any suggestions regarding this.
Note: If you want a new feature in one of these, please use the respective project's issue trackers. Don't add feature requests here.
Note: If you want to update this page (maybe you are a developer of one of these), just sign up as a user in this Confluence and send an email to aslak dot hellesoy at gmail dot com to request access.
Legend:
The feature exists
The feature exists, but is buggy or not well tested
The feature is planned for the near future
The feature doesn't exist
WARNING: THE CURRENT DC 0.5 BRANCH CURRENTLY LACKS A LOT OF THESE FEATURES DUE TO AN ONGOING REDESIGN. THE GOAL IS TO MAKE THEM REAPPEAR BEFORE dc 0.6 IS RELEASED
| CruiseControl | CruiseControl.NET | DamageControl | Drumbeat CI | Tinderbox & Tinderbox2 | BuildBot | Anthill Professional | Anthill | BeetleJuice | Luntbuild professional | LuntBuild | Gump | Draco.NET | Continuum | Sin | Parabuild Server | Tinderbox3 | Pulse | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Project info | ||||||||||||||||||
| Project origin | ThoughtWorks | ThoughtWorks | ThoughtWorks | Timpani Software | Mozilla Project | ? | Urbancode | Urbancode | ? | PMEase | PMEase | ? | ? | Apache | CSH Consult | Viewtier Systems | John Keiser | Zutubi |
| Open Source | | | ||||||||||||||||
| Implementation language | Java | C# | Ruby | C# | Perl | Python | Java | Java | Java | Java | Java | Java | C# | Java | C# | Java | Perl | Java |
| Free | | | ||||||||||||||||
| Issue tracker | JIRA | JIRA | JIRA | ? | Bugzilla | ? | JIRA | JIRA | ? | Supports | SourceForge | ? | ? | JIRA | Official support | Bugzilla | Jira | |
| Online demo | here | here | openauthenticated | here | Working implementation | ? | here (2.x demo) (3.x demo coming soon) | ? | here | Use demo/domo | ? | ? | Working implementation on Codehaus | here | Eval download | Working implementation | Online Demo | |
| Number of active developers | 5 | 2 | 3 | 5 | ? | ? | ? | ? | ? | 2 | ? | ? | 4 | 1 | ? | ? | 2 | |
| SCM support | ||||||||||||||||||
| AccuRev | ? | ? | | ? | ? | ? | ? | ? | ||||||||||
| AlienBrain | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||||
| Bazaar | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | |||||
| BitKeeper | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||||
| ClearCase | | ? | ? | ? | ? | |||||||||||||
| CA Harvest | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||||
| CM Synergy | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||||
| CVS | | ? | ? | ? | ? | |||||||||||||
| Dimensions | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||||
| "File system SCM" | | ? | ? | ? | ? | |||||||||||||
| HTTP file | ? | ? | ? | ? | ? | |||||||||||||
| MKS | | ? | ? | ? | ? | ? | ||||||||||||
| Perforce (p4) | | ? | ? | ? | ? | |||||||||||||
| PVCS | | ? | ? | ? | ? | ? | ||||||||||||
| SourceGear Vault | | ? | ? | ? | ? | ? | ||||||||||||
| StarTeam | | ? | ? | ? | ? | |||||||||||||
| Subversion | | ? | ? | ? | ? | | ||||||||||||
| Surround | | ? | ? | ? | ? | ? | ||||||||||||
| VSS | | ? | ? | ? | ? | |||||||||||||
| VSS Journal | | ? | ? | ? | ? | ? | ||||||||||||
| SCM related support | ||||||||||||||||||
| SCM filtering | | ? | ? | ? | ? | ? | ||||||||||||
| Multi-SCM | | ? | ? | ? | ? | ? | ||||||||||||
| Can create new SCM repositories | ? | ? | ? | ? | ? | |||||||||||||
| Build management | ||||||||||||||||||
| Parallel builds (ability to build several projects simultaneously) | | ? | ? | ? | ? | |||||||||||||
| Distributed builds | | ? | ? | ? | ? | |||||||||||||
| Agents' code auto-updated | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | |||||
| Manually force builds | | ? | ? | ? | ? | Not needed | ||||||||||||
| SCM trigged builds | | ? | ? | ? | ? | |||||||||||||
| SCM poll based builds | | ? | ? | ? | ? | |||||||||||||
| Temporal build scheduling | | ? | ? | ? | ? | |||||||||||||
| Builds promotion | ? | ? | | ? | ? | ? | ? | |||||||||||
| Interproject Dependencies | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||||
| Builds deletion | ? | ? | ? | ? | ? | ? | ? | |||||||||||
| Reproduce history builds | ? | ? | ? | ? | ? | |||||||||||||
| Proactive (can prevent build breakages) | | |||||||||||||||||
| Security | ||||||||||||||||||
| User authentication | | |||||||||||||||||
| User authorization schemes | | |||||||||||||||||
| LDAP Integration | | |||||||||||||||||
| Publishing | ||||||||||||||||||
| Confluence | ? | |||||||||||||||||
| | ||||||||||||||||||
| Run executable | | |||||||||||||||||
| FTP | | ? | ? | ? | ? | |||||||||||||
| IRC | ? | ? | ? | ? | ? | |||||||||||||
| Jabber | ? | ? | ? | ? | ? | |||||||||||||
| Lotus Sametime | | ? | ? | ? | ? | |||||||||||||
| NetSend | | ? | ? | ? | ? | |||||||||||||
| ProjectStart | | ? | ? | ? | ? | |||||||||||||
| RSS | | ? | ? | ? | ? | |||||||||||||
| SCP | ? | ? | ? | ? | ? | |||||||||||||
| Windows System Tray | | ? | ? | ? | ? | |||||||||||||
| Formatted Logging | | ? | ? | ? | ? | |||||||||||||
| Yahoo Messenger | ? | ? | ? | ? | ||||||||||||||
| MSN Messenger | ? | ? | ? | ? | ? | ? | ? | ? | ||||||||||
| X10 | | ? | ? | ? | ? | ? | ||||||||||||
| Web interface | ||||||||||||||||||
| View changesets | | Bonsai | ? | ? | ? | ? | Bonsai | |||||||||||
| Add new projects | | ? | ? | ? | ? | |||||||||||||
| Clone projects | | ? | ? | ? | ? | ? | ||||||||||||
| Delete projects | | ? | ? | ? | ? | |||||||||||||
| Modify projects | | ? | ? | ? | ? | |||||||||||||
| Kill builds | | ? | ? | ? | ? | |||||||||||||
| Pause builds | | ? | ? | ? | ? | |||||||||||||
| Access to build artifacts | | ? | ? | ? | ? | |||||||||||||
| Browse CI's working copy | ? | ? | ? | ? | ? | |||||||||||||
| Delete CI's working copy | ? | ? | ? | ? | ? | |||||||||||||
| Search in builds | | ? | ? | ? | ? | ? | ||||||||||||
| Historic graphs | | ? | ? | ? | ? | |||||||||||||
| Self-updating web page | | ? | ? | ? | ? | |||||||||||||
| Multi project support | | ? | ? | ? | ? | |||||||||||||
| Multi project view | | ? | ? | ? | ? | |||||||||||||
| Add/remove agent machines (for distributed builds) | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||||||
| Directly supported build tools | ||||||||||||||||||
| Shell / command script | | ? | ? | ? | ? | |||||||||||||
| Ant | | ? | ? | ? | ? | |||||||||||||
| Groovy | ||||||||||||||||||
| NAnt | | ? | ? | ? | ? | |||||||||||||
| Maven | | ? | ? | ? | ? | |||||||||||||
| Maven2 | | |||||||||||||||||
| Make | | ? | ? | ? | ? | |||||||||||||
| Visual Studio ('devenv') | | ? | ? | ? | ? | ? | ||||||||||||
| Tools integration | ||||||||||||||||||
| ViewCVS | ? | ? | ? | ? | ? | |||||||||||||
| Fisheye | | ? | ? | ? | ? | ? | ||||||||||||
| Bonsai | ? | ? | ? | | ? | ? | ? | ? | ? | ? | ? | ? | ? | |||||
| Bugzilla | | ? | ? | ? | ? | |||||||||||||
| Scarab | | |||||||||||||||||
| Trac | ? | |||||||||||||||||
| sourceforge.net | ? | |||||||||||||||||
| rubyforge.org | ? | |||||||||||||||||
| JIRA | | ? | ? | ? | ? | |||||||||||||
| Confluence | | ? | ? | ? | ? | |||||||||||||
| JUnit result rendering | | ? | ? | ? | ? | ? | ||||||||||||
| NUnit result rendering | | ? | ? | ? | ? | ? | ||||||||||||
| IntelliJ Plugin | ? | ? | ? | ? | ? | |||||||||||||
| Eclipse Plugin | | ? | ? | ? | ? | |||||||||||||
| Remote Management API | ||||||||||||||||||
| SOAP | | ? | ? | ? | ? | ? | ||||||||||||
| XML-RPC | n/a | ? | ? | ? | ? | |||||||||||||
| JMX | N/A | N/A | n/a | ? | ? | ? | ? | |||||||||||
| Hessian | ? | ? | n/a | ? | ? | ? | ? | |||||||||||
| Client Library | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | |
| Eclipse ALF | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ? | ||
| Installation and Configuration | ||||||||||||||||||
| Windows installer | | ? | ? | ? | ? | |||||||||||||
| Self contained distribution (except SCM clients) | | ? | ? | ? | ? | |||||||||||||
| Additional dependencies | JRE, SCM client | .NET Runtime, IIS, SCM client | SCM client | .NET Runtime, SQL Server (MSDE Included in distribution) | Perl, CVS | ? | JRE, SCM client | JDK, Servlet container, SCM client | ? | jdk, SCM client | jdk,tomcat,SCM client | ? | ? | JRE, SCM client | Subversion, .NET runtime/IIS or Mono/XSP | Perl, CVS, SCP | JDK, some SCM clients | |
| Execution platform | JVM | Windows | Ruby | Windows, .NET, Mono | Perl | ? | JVM | JVM | ? | JVM | JVM | ? | ? | JVM | Windows, Linux | Windows, Unix, Linux, Mac OS X, Solaris, HP UX | Perl | JVM |
| Project platform (what it can build) | Java + anything Ant/Maven/NAnt can build | .NET or anything with a command line interface build | Any language | Any language | Any language | ? | Any language | Any language with supplied ant wrapper | ? | Any language | Any language with supplied ant wrapper | ? | ? | Any language | Any language | Any language | (i)Any language | Any Language |
| Preferred build tool | Ant, Maven | Nant | Any build tool | NAnt | Make | ? | Any build tool | Ant | ? | Any build tool | Ant, Maven | ? | ? | Maven 2 | Any build tool | Any build tool | Make | Any build tool |
| Requires modifications to build scripts | NO | NO (for certain SCMs) | NO | NO | ? | NO | NO | ? | NO | NO | ? | ? | NO | NO | NO | NO | ||
| Supports multiple projects | | ? | ? | ? | ? | |||||||||||||
| Automatic configuration from build script | | |||||||||||||||||
| Text file configuration | Stored in SQL Db - XML input/export coming soon | ? | Database backend | ? | ? | ? |
Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=1421898
本文对比了多种持续集成(CI)系统,包括CruiseControl、DamageControl等,从实施语言、支持的源代码管理系统(SCM)、构建工具等方面进行了详细比较。
3552

被折叠的 条评论
为什么被折叠?



