Hudson or Teamcity for continuous integration?

We are a Java shop looking for a CI tool to use. Both Hudson and Teamcity seem to be free but Teamcity seems slicker and with more support.

I was wondering why one would still use Hudson and if anyone could provide any argument for/against either?


Team City is by far and away the best CI server out there. Its killer feature for me is the tight integration with IDEs (IntelliJ, Eclipse and VisualStudio). It can show you, for example, when a file you're editing in the IDE becomes out of date, who changed it and what they changed. You can commit from the IDE to the CI server, run the comile and tests on the build grid, and then the CI server will commit if the build is successful. You can click on build reports in the CI web app and it will open the appropriate files in the IDE.

There are plugins available (I wrote one: http://team-piazza.googlecode.com), but not many.


+1 for Hudson.

Hudson is a very active project, has a wide community of users and an active users mailing list, is really easy to start with, is easy to use, has been used on huge, very huge, projects (JBoss, JAX-WS, etc) and thus has proven records of success, offers very nice advanced features (eg build matrix, build clustering, etc), is open source, has a lot of plugins...

And if support is really an important thing, you can get commercial support from Sun. But FWIW, I never faced any blocking problem with Hudson.

Update: As you may know, Kohsuke Kawaguchi (the creator of Hudson) has left Sun/Oracle and started his own company to take Hudson to the next stage. In other words, this is not a threat for Hudson. And if you are looking for support, you can get a certified version of Hudson CI Server as part of a subscription plan (this certified version bundles a high quality release of Hudson with a predefined set of plugins plus some commercial one).

Update: To illustrate the size of their respective user base, here is a comparison of job trends for several CI tools on Indeed (live query):

This is of course not a technical indicator.


We started out with Hudson for a couple of Flex projects, then we migrated to TeamCity, when the .NET developers joined our CI efforts. Now we have replaced the TeamCity server again, back to Hudson. The main reasons are: - The vibrant Hudson community, better than support. - The huge amount of plugins for every kind of tasks. - The open source. - Hudson is for free, TeamCity is only free for 10 projects.

edit: TeamCity is now free for 20 projects.

链接地址: http://www.djcxy.com/p/50756.html

上一篇: 哈德森替代建设经理

下一篇: Hudson或Teamcity持续整合?