Show usage string for 'git check-ref-format -h'
authorJonathan Nieder <jrnieder@gmail.com>
Mon, 9 Nov 2009 15:04:48 +0000 (09:04 -0600)
committerJunio C Hamano <gitster@pobox.com>
Tue, 10 Nov 2009 19:06:56 +0000 (11:06 -0800)
This only changes the behavior of "git check-ref-format -h"
without any other options and arguments.

This change cannot be breaking backward compatibility, since any
valid refname must contain a /.   Most existing scripts use
arguments such as "heads/$foo".  If some script checks the
refname "-h" alone, git check-ref-format will still exit with
nonzero status, and the only detrimental side-effect will be a
usage string sent to stderr.

Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin-check-ref-format.c

index e3e7bdf52f0b1f597e6cfd3affcf75f41f183d75..0a576afd0e51f166f46493d86f4a0914ed8a744b 100644 (file)
@@ -31,6 +31,9 @@ static void collapse_slashes(char *dst, const char *src)
 
 int cmd_check_ref_format(int argc, const char **argv, const char *prefix)
 {
+       if (argc == 2 && !strcmp(argv[1], "-h"))
+               usage(builtin_check_ref_format_usage);
+
        if (argc == 3 && !strcmp(argv[1], "--branch")) {
                struct strbuf sb = STRBUF_INIT;