Skip to content
  • Rasmus Villemoes's avatar
    git.c: handle_alias: prepend alias info when first argument is -h · a9a60b94
    Rasmus Villemoes authored and Junio C Hamano's avatar Junio C Hamano committed
    
    
    Most git commands respond to -h anywhere in the command line, or at
    least as a first and lone argument, by printing the usage
    information. For aliases, we can provide a little more information that
    might be useful in interpreting/understanding the following output by
    prepending a line telling that the command is an alias, and for what.
    
    When one invokes a simple alias, such as "cp = cherry-pick"
    with -h, this results in
    
    $ git cp -h
    'cp' is aliased to 'cherry-pick'
    usage: git cherry-pick [<options>] <commit-ish>...
    ...
    
    When the alias consists of more than one word, this provides the
    additional benefit of informing the user which options are implicit in
    using the alias, e.g. with "cp = cherry-pick -n":
    
    $ git cp -h
    'cp' is aliased to 'cherry-pick -n'
    usage: git cherry-pick [<options>] <commit-ish>...
    ...
    
    For shell commands, we cannot know how it responds to -h, but printing
    this line to stderr should not hurt, and can help in figuring out what
    is happening in a case like
    
    $ git sc -h
    'sc' is aliased to '!somecommand'
    somecommand: invalid option '-h'
    
    Suggested-by: default avatarJeff King <peff@peff.net>
    Signed-off-by: default avatarRasmus Villemoes <rv@rasmusvillemoes.dk>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    a9a60b94