Don't Break the Build
Thanks for visiting! I'm in the process of moving my blog, and I am starting with my most popular posts. A revised version of this post can be found here.
Comments
Anonymous
January 09, 2011
Great article, clear and well written with good points. Have you made any experiences with systems that reject breaking commits? (and would you be in favour of that?)Anonymous
January 12, 2011
Hi Henrik, I am glad you enjoyed the article. Yes, I have worked on several projects that have had such a system. I like the old saying, "an ounce of prevention is worth a pound of cure". So while in general I am favor of "gated commits", there are a couple of things to think about. The first thing is that it does take time to set up and debug such a system. If the team is small then the cost may not be worth it. The second thing is that the check in tests should not become too bloated, and it must be possible for a developer to run the tests locally before trying to commit. It is very frustrating (and a waste of time) to submit changes then wait an hour to find that they were rejected. That said, if I were working on an important, "mission critical" project that I would insist on gated commits.