Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> writes: > The strings in the the "usagestr" array have special handling for the > empty string dating back to f389c808b67 (Rework make_usage to print > the usage message immediately, 2007-10-14). > > We'll prefix all strings after the first one with "or: ". Then if we > encountered a "" we'll emit all strings after that point verbatim > without any "or: " prefixing. > > This gets rid of that special case, which was added in > f389c808b67 (Rework make_usage to print the usage message immediately, > 2007-10-14). It was only used "blame" (the "credential-cache*" use of used *by* "blame" > it was removed in the preceding commit). Before this change we'd emit: > > $ git blame -h > usage: git blame [<options>] [<rev-opts>] [<rev>] [--] <file> > > <rev-opts> are documented in git-rev-list(1) The most crucial information is missing. It may be shared with the previous step but it is even worse in this step. Why is this loss of feature a desirable thing in the first place? What are we gaining by breaking the "after listing the alternative forms concatenated with 'or:', we can give a general description, before going onto the list of options"? Without that explained, the remainder of the proposed log message reads more like an excuse for breaking the feature, justifying that the loss of feature can be worked around, than the description of a solution. Thanks.