On the Ibuildings techPortal site today there's a new tutorial from Marc that introduces the phpUnderControl continuous integration system for PHP projects.
In any decent sized project, the more times you commit code, the bigger the chance is that you will break something. [...] To deal with this we can either adopt the 'úrelease and pay'Ě method of software control, or we can setup systems to help us find the consequences of our actions, so we that can correct them before they become a problem. We usually call these systems Continuous Integration systems.
He briefly covers what phpUnderControl is and what it can do for you before getting into the real detail - grabbing all the needed packages (including the eZ components graphing library), setting the system up and configuring it for a sample project. This includes setting up the XML configuration file and adding in PhpDocumentor/PHPUnit/PhpCodeSniffer. He adds in two "nice things to have" at the end - emailing when something breaks and setting up/tearing down a database as needed.