Using post-commit hooks to handle your deployment for you can have undesired effects if your scripts aren't perfect.
I would recommend looking into continuous integration over this method. I've been using TeamCity for just over a year and it is fantastic for a staging environment.
I would recommend looking into continuous integration over this method. I've been using TeamCity for just over a year and it is fantastic for a staging environment.