I am a newcomer to git looking to set up a web development environment where individual computers are used for development, the development.git, staging.git and production.git repositories are stored on an external server reachable by password-less ssh and the staging and production websites are on yet another server, also reachable by password-less ssh from the git-server (and the development machines). Locating the three git repositories on an external server works fine but I have not been able to have the staging and production deployment files on another server. I believe this is what is referred by GIT_WORK_TREE and based on what I found on the web I created a post-receive hook of staging.git with the two lines: #!/bin/sh GIT_WORK_TREE=user@1.2.3.4:/var/www/html/dev.whatever git checkout -f master I believe this should deploy the files from the development work tree. The above, however, fails. Should it work? I am running git 1.7.1 on CentOS 6.