From: Linus Torvalds Date: Thu, 25 May 2006 15:22:42 +0000 (-0700) Subject: bogus "fatal: Not a git repository" X-Git-Tag: v1.4.0-rc1~65 X-Git-Url: https://git.octo.it/?a=commitdiff_plain;ds=sidebyside;h=4d599e6bb46d6ef3276425af34922fdbf3aac473;p=git.git bogus "fatal: Not a git repository" I was just testing that "git ls-remote" change by Junio, and when you're not in a git repository, it gives this totally bogus warning. The _target_ obviously has to be a git repository, but there's no reason why you'd have to be in a local git repo when doing an ls-remote. The reason is commit 73136b2e8a8ee024320c5ac6a0f14f912432bf03 by Dscho: it adds calls to git-repo-config in git-parse-remote.sh to get the remote shorthands etc. Now, either we should just hide and ignore the error from git-repo-config (probably bad, because some errors _are_ valid - like git-repo-config failing due to bad syntax in the config file), or we should just make git-repo-config quietly handle the case of not being in a git repository. This does the latter: just quietly accepting (and doing nothing - trying to set a value will result in the lock-file failing) our lot in life sounds better than dying with a bogus error message. Signed-off-by: Linus Torvalds Acked-By: Johannes Schindelin Signed-off-by: Junio C Hamano --- diff --git a/repo-config.c b/repo-config.c index 127afd78..08fc4cc5 100644 --- a/repo-config.c +++ b/repo-config.c @@ -108,7 +108,8 @@ static int get_value(const char* key_, const char* regex_) int main(int argc, const char **argv) { - setup_git_directory(); + int nongit = 0; + setup_git_directory_gently(&nongit); while (1 < argc) { if (!strcmp(argv[1], "--int"))