Subject: Re: [PATCH v2] help: make option --help open man pages only for Git commands

From: Junio C Hamano <[email-masked]>
Date: Mon, 15 Aug 2016 10:57:59 -0700

"Philip Oakley" <[email-masked]> writes:

> I'm still not sure this is enough. One of the problems back when I
> introduced the --guides option (65f9835 (builtin/help.c: add --guide
> option, 2013-04-02)) was that we had no easy way of determining what
> guides were available, especially given the *nix/Windows split where
> the help defaults are different (--man/--html).
>
> At the time[1] we (I) punted on trying to determine which guides were
> actually installed, and just created a short list of the important
> guides, which I believe you now check. However the less common guides
> are still there (gitcvs-migration?), and others may be added locally.

I think we should do both; "git help cvs-migration" should keep the
same codeflow and behaviour as we have today (so that it would still
work), while "git cvs-migration --help" should say "'cvs-migration'
is not a git command".  That would be a good clean-up anyway.

It obviously cannot be done if git.c::handle_builtin() does the same
"swap <word> --help to help <word>" hack, but we could improve that
part (e.g. rewrite it to "help --swapped <word>" to allow cmd_help()
to notice).  When the user said "<word> --help", we don't do guides,
when we swapped the word order, we check with guides, too.