Allows the use of the "-" shorthand notation, including use with revision ranges. If we plan to allow "-" as a stand in every where a revision is allowed, then "-" would also need to be usable in plumbing commands, for writing tests, for example. Checks if the argument can be interpreted as a revision range first before checking for flags. This saves us from having to check that something that begins with "-" does not get checked as a possible flag. Signed-off-by: Kenny Lee Sin Cheong <kenny.lee28@xxxxxxxxx> --- builtin/rev-parse.c | 37 +++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/builtin/rev-parse.c b/builtin/rev-parse.c index 3626c61..8da95b5 100644 --- a/builtin/rev-parse.c +++ b/builtin/rev-parse.c @@ -553,6 +553,25 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix) continue; } + /* Not a flag argument */ + if (try_difference(arg)) + continue; + if (try_parent_shorthands(arg)) + continue; + name = arg; + type = NORMAL; + if (*arg == '^') { + name++; + type = REVERSED; + } + if (!get_sha1_with_context(name, flags, sha1, &unused)) { + if (verify) + revs_count++; + else + show_rev(type, sha1, name); + continue; + } + if (*arg == '-') { if (!strcmp(arg, "--")) { as_is = 2; @@ -810,24 +829,6 @@ int cmd_rev_parse(int argc, const char **argv, const char *prefix) continue; } - /* Not a flag argument */ - if (try_difference(arg)) - continue; - if (try_parent_shorthands(arg)) - continue; - name = arg; - type = NORMAL; - if (*arg == '^') { - name++; - type = REVERSED; - } - if (!get_sha1_with_context(name, flags, sha1, &unused)) { - if (verify) - revs_count++; - else - show_rev(type, sha1, name); - continue; - } if (verify) die_no_single_rev(quiet); if (has_dashdash) -- 2.3.3.203.g8ffb468.dirty -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html