If you're already using Git for version control, why not also deploy from it? I personally use it to simultaneously push to GitHub and production and it works very well:
I deploy everything with git. With branches and tags, that also lets me deploy different states of a given project to different servers (development, staging, production). Rolling back or switching between tags is easy (migrations aside).
http://stackoverflow.com/questions/279169/deploy-php-using-g...