Skip to contentSkip to conversation

repo-config needs a prefix.

PATCH Robert Shearman 3 participants 3 messages Jun 15, 2016

lore
Share & tools
lore
#0 lore raw

This fixes the message received when invoking certain commands from outside of a git tree, so e.g. instead of receiving this:
/home/rob/bin/git-fetch: line 89: /FETCH_HEAD: Permission denied
We get this again:
fatal: Not a git repository: '.git'

---
 git.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
git.c +1 -1
index 18ba14a..f9c76a1 100644
@@ -264,7 +264,7 @@ static void handle_internal_command(int 
 		{ "prune", cmd_prune, NEEDS_PREFIX },
 		{ "mv", cmd_mv, NEEDS_PREFIX },
 		{ "prune-packed", cmd_prune_packed, NEEDS_PREFIX },
-		{ "repo-config", cmd_repo_config },
+		{ "repo-config", cmd_repo_config, NEEDS_PREFIX },
 	};
 	int i;
 
#1 lore raw

While I do agree that it would be better to give nicer message when running "git-fetch" in bogus places, I do not know if your patch is the right fix. Especially, I am not sure if this change meshes well with this fix a few months ago.

commit 4d599e6bb46d6ef3276425af34922fdbf3aac473

Author: Linus Torvalds <[email protected]>
Date:   Thu May 25 08:22:42 2006 -0700

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.

#2 lore raw
In reply to Robert Shearman

Hi,

git.c static void handle_internal_command(int · line 267

Quoted 2 lines · Robert Shearman
git.c +1 -1
-               { "repo-config", cmd_repo_config },
+               { "repo-config", cmd_repo_config, NEEDS_PREFIX },

Doesn't this prevent

$ git-ls-remote kernel

from being run anywhere, when the relevant information is in $HOME/.gitconfig?

I'd rather fix git-fetch to cd to the root of the repo, since it really does not make sense to expect git-fetch to fetch just one subdirectory.

Ciao,
Dscho