I think you should have a look at
BAM!
This is a web based application manager that allows us to take backups of our applications on our own servers, create a working copy of it on a sub domain controlled by you, and also gives you the capability to revert an application to a pre existing backup.
Creating a working copy (otherwise called sandbox) can be synced with the live application whenever needed. This helps us first test out new features and then make them live.
All this is done through a simple web based interface. Try it out..
hope this helps