I know generally what they do, but where do they come from? Do they have a formal name? I’ve seen similar letters followed by dashes often in shell commands as well.
I couldn’t turn up an answer after some quick searching, since I can’t search for “-a” “-b” etc since the dash isn’t picked up by search engines.
Edit: I found a search engine to look up things like this: symbolhound
Those are called switches. They are extremely common on the command line. Most open source software (such as git) use libraries like getopt to read these. The format is very predictable:
In both of these cases VALUE may or may not be required depending on the switch. In your example they’re not used. Reading the man pages or running
command --helpwill usually tell you what switches are supported.