On 10/27/2013 09:09 AM, Thomas Rast wrote: > Josh Triplett <[email protected]> writes: > >> On Sun, Oct 27, 2013 at 06:42:44AM +0100, Michael Haggerty wrote: >>> But I don't think that this feature should be given the "-f" short >>> option, as (a) -f often means "force"; (b) it will increase the >>> confusion with --fixup; (c) it just doesn't strike me as being likely to >>> be such a frequently-used option (though if this changes over time the >>> "-f" option could always be granted to it later). >> >> (a) -n often means --dry-run, but for commit it means --no-verify. >> Different commands have different options, and commit doesn't have a >> --force to abbreviate as -f. >> >> (b) If anything, I think the existence of a short option will make the >> distinction more obvious, since -f and --fixup are much less similar >> than --fixes and --fixup. Most users will never type --fixes, making >> confusion unlikely. >> >> (c) Short option letters tend to be first-come first-serve unless >> there's a strong reason to do otherwise. Why reserve 'f' for some >> hypothetical future option that doesn't exist yet? > > No, lately the direction in Git has been to avoid giving options a > one-letter shorthand until they have proven so useful that people using > it in the wild start to suggest that it should have one. > > See e.g. > > http://article.gmane.org/gmane.comp.version-control.git/233998 > http://article.gmane.org/gmane.comp.version-control.git/168748 > > A much better argument would be if it was already clear from the specs > laid out for Fixes that n% of the kernel commits will end up having this > footer, and thus kernel hackers will spend x amount of time spelling out > --fixes and/or confusing it with --fixup to much headache. >
I assembled an overview table, which plots the long options of
git commands by the short letters.
Here it is:
(Best viewed with a *large* screen and monospace font)
Name\short | C | B | A |
G | F | E | H |
O | N | L | S | R |
P | W | X | c | b |
a | g | f | e | d | k | i |
o | n | m | l |
s | r | q | p | w | v |
u | t | z | x | 3 | 2
status | | | |
| | | |
| | | | |
| | | | branch |
| | | | | | |
| | | |
short | | | | | verbose |
untracked-files | | null | | | status
help | | | |
| | | |
| | | | |
| | | | |
all | guides | | | | | info
| | | man | |
| | | | web | |
| | | | | help
show | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | quiet | | | |
| | | | | show
revert | | | |
| | | |
| | | | |
| | strategy-option | | |
| | | edit | | | |
| no-commit | mainline | |
signoff | | | | | |
| | | | | revert
pack-objects | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | quiet | | | |
| | | | | pack-objects
prune-packed | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| dry-run | | |
| | quiet | | | |
| | | | | prune-packed
replace | | | |
| | | |
| | | | |
| | | | |
| | force | | delete | | |
| | | list |
| | | | | |
| | | | | replace
show-ref | | | |
| | | |
| | | | |
| | | | |
| | | | dereference | | |
| | | |
hash | | quiet | | | |
| | | | | show-ref
tag | | | |
| file | | |
| | | | |
| | | | |
annotate | | force | | delete | |
| | | message | list |
sign | | | | | verify |
local-user | | | | | tag
gc | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | quiet | | | |
| | | | | gc
apply | | | |
| | | |
| | | | reverse |
| | | | |
| | | | | | |
| | | |
| | | | | verbose |
| | | | 3way | apply
fsck-objects | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | | | | verbose |
| | | | | fsck-objects
archive | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
output | | | |
| | | | | |
| | | | | archive
merge-file | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | quiet | stdout | | |
| | | | | merge-file
log | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | quiet | | | |
| | | | | log
cherry | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | | | | verbose |
| | | | | cherry
checkout-index | | | |
| | | |
| | | | |
| | | | |
all | | force | | | |
| | no-create | | |
| | quiet | | | |
index | | | | | checkout-index
check-attr | | | |
| | | |
| | | | |
| | | | |
all | | | | | |
| | | | |
| | | | | |
| | | | | check-attr
reflog | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | quiet | | | |
| | | | | reflog
branch | | | |
| | | |
| | | | |
| | | | |
all | | force | | delete | |
| | | move | create-reflog |
| remotes | quiet | | | verbose |
set-upstream-to | track | | | | branch
ls-tree | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | long |
| | | | | |
| | | | | ls-tree
rm | | | |
| | | |
| | | | |
| | | | |
| | force | | | | |
| dry-run | | |
| | quiet | | | |
| | | | | rm
config | | | |
| | | |
| | | | |
| | | | |
| | file | edit | | | |
| | | list |
| | | | | |
| | null | | | config
remote | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | | | | verbose |
| | | | | remote
init-db | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | quiet | | | |
| | | | | init-db
merge-base | | | |
| | | |
| | | | |
| | | | |
all | | | | | |
| | | | |
| | | | | |
| | | | | merge-base
for-each-ref | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
shell | | | perl | | |
| | | | | for-each-ref
clone | | | |
| | | |
| | | | |
| | | config | branch |
| | | | | | |
origin | no-checkout | | local |
shared | | quiet | | | verbose |
upload-pack | | | | | clone
count-objects | | | |
| | | human-readable |
| | | | |
| | | | |
| | | | | | |
| | | |
| | | | | verbose |
| | | | | count-objects
fsck | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | | | | verbose |
| | | | | fsck
verify-pack | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
stat-only | | | | | verbose |
| | | | | verify-pack
update-server-info | | | |
| | | |
| | | | |
| | | | |
| | force | | | | |
| | | |
| | | | | |
| | | | | update-server-info
add | | | all |
| | | |
| intent-to-add | | | |
| | | | |
| | force | edit | | | interactive |
| dry-run | | |
| | | patch | | verbose |
update | | | | | add
whatchanged | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | quiet | | | |
| | | | | whatchanged
cherry-pick | | | |
| | | |
| | | | |
| | strategy-option | | |
| | | edit | | | |
| no-commit | mainline | |
signoff | | | | | |
| | | | | cherry-pick
read-tree | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| dry-run | | |
| | | | | verbose |
| | | | | read-tree
format-patch | | | |
| | | |
| no-numbered | | | |
| | | | |
| | | | | keep-subject | |
output-directory | numbered | | |
signoff | | quiet | no-stat | | reroll-count |
| | | | | format-patch
stage | | | all |
| | | |
| intent-to-add | | | |
| | | | |
| | force | edit | | | interactive |
| dry-run | | |
| | | patch | | verbose |
update | | | | | stage
reset | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | quiet | patch | | |
| | | | | reset
check-ignore | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| non-matching | | |
| | quiet | | | verbose |
| | | | | check-ignore
grep | context | before-context | after-context |
basic-regexp | fixed-strings | extended-regexp | |
open-files-in-pager | | files-without-match | |
| perl-regexp | function-context | | count |
| text | | | | | |
ignore-case | | line-number | |
files-with-matches | | | quiet | show-function |
word-regexp | invert-match | | | null | |
| grep
prune | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| dry-run | | |
| | | | | verbose |
| | | | | prune
symbolic-ref | | | |
| | | |
| | | | |
| | | | |
| | | | delete | | |
| | | |
| | quiet | | | |
| | | | | symbolic-ref
checkout | | | |
| | | |
| | | | |
| | | | |
| | force | | | | |
| | merge | |
| | quiet | patch | | |
| track | | | theirs | ours checkout
repack | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | local |
| | quiet | | | |
| | | | | repack
init | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | quiet | | | |
| | | | | init
merge | | | |
| | | |
| | | gpg-sign | |
| | strategy-option | | |
| | | edit | | | |
| | message | |
strategy | | quiet | | | verbose |
| | | | | merge
mv | | | |
| | | |
| | | | |
| | | | |
| | force | | | | |
| dry-run | | |
| | | | | verbose |
| | | | | mv
ls-files | | | |
| | | |
| | | | |
| | exclude-from | cached | |
| | | | deleted | killed | ignored |
others | | modified | |
stage | | | | | |
unmerged | | | exclude | | ls-files
clean | | | |
| | | |
| | | | |
| | | | |
| | force | exclude | | | interactive |
| dry-run | | |
| | quiet | | | |
| | | | | clean
show-branch | | | |
| | | |
| | | | |
| | | | |
all | reflog | | | | |
| | | | |
| remotes | | | | |
| | | | | show-branch
push | | | |
| | | |
| | | | |
| | | | |
| | force | | | | |
| dry-run | | |
| | quiet | | | verbose |
set-upstream | | | | | push
commit | reuse-message | | |
| file | | |
| | | gpg-sign | |
| | | reedit-message | |
all | | | edit | | | include
| only | no-verify | message | |
signoff | | quiet | patch | | verbose |
untracked-files | template | null | | | commit
verify-tag | | | |
| | | |
| | | | |
| | | | |
| | | | | | |
| | | |
| | | | | verbose |
| | | | | verify-tag
fmt-merge-msg | | | |
| file | | |
| | | | |
| | | | |
| | | | | | |
| | message | |
| | | | | |
| | | | | fmt-merge-msg
fetch | | | |
| | | |
| | | | |
| | | | |
append | | force | | | keep |
| | | multiple | |
| | quiet | prune | | verbose |
update-head-ok | tags | | | | fetch
(In case thunderbird messes it up, here it is again
http://pastebin.com/raw.php?i=JBci2Krx)
As you can see, f is always --force except for git-config, where it is --file
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

