From: Junio C Hamano Date: Fri, 15 Apr 2016 01:57:44 +0000 (-0700) Subject: Merge branch 'jk/rev-parse-local-env-vars' into maint X-Git-Tag: v2.8.2~19 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/7488c2f65a029246c350b6e89484455a2249fe98?ds=inline;hp=--cc Merge branch 'jk/rev-parse-local-env-vars' into maint The "--local-env-vars" and "--resolve-git-dir" options of "git rev-parse" failed to work outside a repository when the command's option parsing was rewritten in 1.8.5 era. * jk/rev-parse-local-env-vars: rev-parse: let some options run outside repository t1515: add tests for rev-parse out-of-repo helpers --- 7488c2f65a029246c350b6e89484455a2249fe98 diff --cc builtin/rev-parse.c index cf8487b3b9,3116d29d83..c961b74c5a --- a/builtin/rev-parse.c +++ b/builtin/rev-parse.c @@@ -763,20 -787,9 +787,10 @@@ int cmd_rev_parse(int argc, const char continue; } if (!strcmp(arg, "--git-common-dir")) { - puts(get_git_common_dir()); + const char *pfx = prefix ? prefix : ""; + puts(prefix_filename(pfx, strlen(pfx), get_git_common_dir())); continue; } - if (!strcmp(arg, "--resolve-git-dir")) { - const char *gitdir = argv[++i]; - if (!gitdir) - die("--resolve-git-dir requires an argument"); - gitdir = resolve_gitdir(gitdir); - if (!gitdir) - die("not a gitdir '%s'", argv[i]); - puts(gitdir); - continue; - } if (!strcmp(arg, "--is-inside-git-dir")) { printf("%s\n", is_inside_git_dir() ? "true" : "false");