Re: git push to a local directory with no .git in it
- From
Junio C Hamano <junkio@cox.net>
- Date
- Sep 30, 2005, 00:05 UTC
- Message-ID
- <7v7jcze7xu.fsf@assigned-by-dhcp.cox.net>
- In-Reply-To
- <loom.20050930T011606-58@post.gmane.org>
Richard Curnow <rc@rc0.org.uk> writes:
Show 5 quoted lines
> I get > > fatal: /home/richard/homepage/git/mairix.git doesn't appear to be a git directory > > presumably because there is no .git in it.
Please don't presume, but dig.
$ git grep -n 'doesn.t appear to be'
receive-pack.c:275: die("%s doesn't appear to be a git directory", dir);And the lines around there are:
/* chdir to the directory. If that fails, try appending ".git" */
if (chdir(dir) < 0) {
if (chdir(mkpath("%s.git", dir)) < 0)
die("unable to cd to %s", dir);
} /* If we have a ".git" directory, chdir to it */
chdir(".git");
putenv("GIT_DIR=."); if (access("objects", X_OK) < 0 || access("refs/heads", X_OK) < 0)
die("%s doesn't appear to be a git directory", dir);
write_head_info();We chdir to mairix.git/, and then try to chdir to .git beneath it _if_ _exists_; we do not care if the second chdir fails. So if you do not have mairix.git/.git, that's OK. We will stay in mairix.git/ directory and then set the GIT_DIR there.
If you do not have mairix.git/objects or mairix.git/refs/heads/ then that's when you get that error message.
$ cd /home/richard/homepage/git/mairix.git
$ ls -ld objects refs refs/headswould tell us more.