Skip to content

Commit

Permalink
rev-parse: remove restrictions on some options
Browse files Browse the repository at this point in the history
The "--local-env-vars" and "--resolve-git-dir" arguments to
git-rev-parse are currently only handled if they appear first on the
command line (in the case of "--local-env-vars", only if it is the only
argument).  While it may not make sense to use these options when any
others are specified, there is no reason for this restriction and it
might confuse users if these arguments appear to be ignored.

There is no need for any documentation change here as the restrictions
on these options are not documented.

Signed-off-by: John Keeping <john@keeping.me.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
John Keeping authored and Junio C Hamano committed Jul 22, 2013
1 parent 31fe405 commit 68889b4
Showing 1 changed file with 13 additions and 15 deletions.
28 changes: 13 additions & 15 deletions builtin/rev-parse.c
Original file line number Diff line number Diff line change
Expand Up @@ -479,21 +479,6 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix)
if (argc > 1 && !strcmp("--sq-quote", argv[1]))
return cmd_sq_quote(argc - 2, argv + 2);

if (argc == 2 && !strcmp("--local-env-vars", argv[1])) {
int i;
for (i = 0; local_repo_env[i]; i++)
printf("%s\n", local_repo_env[i]);
return 0;
}

if (argc > 2 && !strcmp(argv[1], "--resolve-git-dir")) {
const char *gitdir = resolve_gitdir(argv[2]);
if (!gitdir)
die("not a gitdir '%s'", argv[2]);
puts(gitdir);
return 0;
}

if (argc > 1 && !strcmp("-h", argv[1]))
usage(builtin_rev_parse_usage);

Expand Down Expand Up @@ -647,6 +632,12 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix)
for_each_remote_ref(show_reference, NULL);
continue;
}
if (!strcmp(arg, "--local-env-vars")) {
int i;
for (i = 0; local_repo_env[i]; i++)
printf("%s\n", local_repo_env[i]);
continue;
}
if (!strcmp(arg, "--show-toplevel")) {
const char *work_tree = get_git_work_tree();
if (work_tree)
Expand Down Expand Up @@ -697,6 +688,13 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix)
printf("%s%s.git\n", cwd, len && cwd[len-1] != '/' ? "/" : "");
continue;
}
if (!strcmp(arg, "--resolve-git-dir")) {
const char *gitdir = resolve_gitdir(argv[i+1]);
if (!gitdir)
die("not a gitdir '%s'", argv[i+1]);
puts(gitdir);
continue;
}
if (!strcmp(arg, "--is-inside-git-dir")) {
printf("%s\n", is_inside_git_dir() ? "true"
: "false");
Expand Down

0 comments on commit 68889b4

Please sign in to comment.