Thank you for filling out a Git bug report! Please answer the following questions to help us understand your issue. What did you do before the bug happened? (Steps to reproduce your issue) git ls-remote -h What did you expect to happen? (Expected behavior) The same as git ls-remote --heads. What happened instead? (Actual behavior) Displayed the git ls-remote usage. What's different between what you expected and what actually happened? The usage indicates -h is the same as --heads, while -h is handled upstream and always displays the usage of the command. Anything else you want to add: The same problem exists with the following commands: grep -h is supposed to not show filenames according to its usage string. show-ref -h is defined as some hidden option equivalent to --head. Please review the rest of the bug report below. You can delete any lines you don't wish to share. [System Info] git version: git version 2.30.2 cpu: x86_64 no commit associated with this build sizeof-long: 8 sizeof-size_t: 8 shell-path: /bin/sh uname: Linux 5.11.0-31-lowlatency #33-Ubuntu SMP PREEMPT Wed Aug 11 14:21:21 UTC 2021 x86_64 compiler info: gnuc: 10.2 libc info: glibc: 2.33 $SHELL (typically, interactive shell): /bin/zsh [Enabled Hooks] not run from a git repository - no hooks to show