From: david@lang.hm Date: Fri, 30 May 2008 09:43:04 GMT Subject: Re: post-receive hook Message-ID: In-Reply-To: <200805301106.33992.johan@herland.net> On Fri, 30 May 2008, Johan Herland wrote: > On Friday 30 May 2008, david@lang.hm wrote: >> I'm trying to setup a post-receive hook to do a checkout -f when I push to >> a public repo (it's a web based tool and I want the executables to be >> updated with a push) >> >> unfortunantly if I just add git checkout -f to the post-receive hooks it >> checks the files out in the .git directory. >> >> if I do a cd .. ; git checkout -f I get an error message complaining that >> it's not in a git repository, but if I manually cd to that directory and >> do a checkout it works. >> >> what am I missing here? > > I'm guessing that the post-receive hook is invoked with "GIT_DIR=.", which goes bad the moment you chdir anywhere. I have this in my own update hook script: > > if [ "$GIT_DIR" = "." ]; then > GIT_DIR=`pwd` > fi > > If you do this before the "cd .. ; git checkout -f", you might have better luck. thanks, that solved the problem. David Lang