At Avatar New York, we've always implemented some form of version control system. From Microsoft’s Visual Source Safe (shutter…) to CVS, SVN, and finally Git (although we still use SVN for some projects). Not using some form of VC was a non-option and all our developers were required to learn it if they didn't already. Deployment, however, was another issue. With the exception of VSS, we’ve typically “deployed” our code by simply updating the live site to the latest stable code in the repo (i.e. trunk, master, etc). If there was ever a problem, we could always rollback to the previous version. There are couple problems with this strategy:
It was obvious we had to change our strategy. We looked into a few popular solutions including Capistrano, Jenkins, Vlad the Deployer, and Drush Deploy, but none of them satisfied all my requirements. Enter DeployHQ.com. Some of the features that led us to conclude this was the right solution for us were:
So far, we’ve been successfully deploying a handful of sites with this new strategy on our Cloud Servers and haven’t looked back. Now if we can only figure out how to automate deployment of those legacy VSS sites. Hmm...