Mike Willbanks recently posted a look at deployment in PHP applications and all of the processes/systems surrounding it:
We've all been there, working through how we are going to be deploying the next latest and greatest solution for our company. Going through all of the rigger just to think, hey wait a second, how are we going to handle the deployment process and integrating our current solution with what we have ready for a release. Release management is always simple but yet so complex.
He touches on several different aspects of both the development process and the actual deployment system - version controlled repositories for your applications, a good bug tracker, database deployment and the steps in getting things ready for the push.