开发者

Benefits of Continuous Integration workflow

I'm currently planning a new project and considering the products I need to buy. Currently I'm quite definite we'll be using Git as a VCS, but I'm quite new to the whole Continuous Integration concept and confused about the benefits we can get from it. But I have a sense that this thing might greatly increase the future workflow of the team of about 5 developers I'm planning to gather on a JVM web project.

So my questions are:

  1. What benefits do I get from using some CI system compared to simply using some private Git repository like beanstalkapp?
  2. If I'll be using some CI system will I need to also setup or rent some private VCS repository or will it already 开发者_如何转开发be integrated in CIS?
  3. I find myself very trusting to all JetBrains products I know so far, so I'm considering TeamCity. Is this a good choice?
  4. Just in case. I'm wondering if there are some better "cutting edge" VCSs compared to Git I should consider?


1) Benefits - The benefits are talked about in many places, I will just link to them as I cannot do a better job of it -

http://martinfowler.com/articles/continuousIntegration.html#BenefitsOfContinuousIntegration

http://en.wikipedia.org/wiki/Continuous_integration#Advantages

2) CI tools like Teamcity, Hudson / Jenkins and CruiseControl usually do not have integrated VCS. They have the ability to poll the VCS you are using and build, test, deploy etc. You will have to setup a separate repository with the VCS of your choice, private or otherwise.

3) TeamCity is an excellent CI tool. I am using it in my project with the full license. For a 5 developer team, I think TeamCity, with its developer focused features and setting will be a great CI tool. You might want to look at Jenkins though.

4) Hg ( mercurial) and Git are both pretty well known and "cutting edge" in the DVCS world. SVN is stil the most widely used VCS I believe. Git would be a good choice.


  1. The main benefit of CI (with TDD) is that it helps you identify failing code early.
  2. A CI tools like CruiseControl should integrate to your SVN repository with the help of plugins, but you need to check compatibility.
  3. Cant help you here, I don't know TeamCity, but I have used CruiseControl and I was happy with it.
  4. Personally I use my own subversion server. For work I always favor having full control of the supporting system. Now we are moving our VC Server to the cloud, but still setting up our own.
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜