help: do not expect built-in commands to be hardlinked
commit722fc374914d4f9b37d42a8eda603eecb790f64c
authorJohannes Schindelin <johannes.schindelin@gmx.de>
Wed, 7 Oct 2020 21:56:51 +0000 (7 21:56 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 7 Oct 2020 22:25:10 +0000 (7 15:25 -0700)
treef72b5ec4e5d2c95850abce1e8ac2ef9b09a1a84c
parentef60e9f74b2d3638281da8affd4c854eead258b1
help: do not expect built-in commands to be hardlinked

When building with SKIP_DASHED_BUILT_INS=YesPlease, the built-in
commands are no longer present in the `PATH` as hardlinks to `git`.

As a consequence, `load_command_list()` needs to be taught to find the
names of the built-in commands from elsewhere.

This only affected the output of `git --list-cmds=main`, but not the
output of `git help -a` because the latter includes the built-in
commands by virtue of them being listed in command-list.txt.

The bug was detected via a patch series that turns the merge strategies
included in Git into built-in commands: `git merge -s help` relies on
`load_command_list()` to determine the list of available merge
strategies.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git.c
help.c
help.h