зеркало из https://github.com/microsoft/git.git
help: use early config when autocorrecting aliases
Git has this feature which suggests similar commands (including aliases) in case the user specified an unknown command. This feature currently relies on a side effect of the way we expand aliases right now: when a command is not a builtin, we use the regular config machinery (meaning: discovering the .git/ directory and initializing global state such as the config cache) to see whether the command refers to an alias. However, we will change the way aliases are expanded in the next commits, to use the early config instead. That means that the autocorrect feature can no longer discover the available aliases by looking at the config cache (because it has not yet been initialized). So let's just use the early config machinery instead. This is slightly less performant than the previous way, as the early config is used *twice*: once to see whether the command refers to an alias, and then to see what aliases are most similar. However, this is hardly a performance-critical code path, so performance is less important here. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Reviewed-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
e2e1425107
Коммит
659fef199f
2
help.c
2
help.c
|
@ -330,7 +330,7 @@ const char *help_unknown_cmd(const char *cmd)
|
||||||
memset(&other_cmds, 0, sizeof(other_cmds));
|
memset(&other_cmds, 0, sizeof(other_cmds));
|
||||||
memset(&aliases, 0, sizeof(aliases));
|
memset(&aliases, 0, sizeof(aliases));
|
||||||
|
|
||||||
git_config(git_unknown_cmd_config, NULL);
|
read_early_config(git_unknown_cmd_config, NULL);
|
||||||
|
|
||||||
load_command_list("git-", &main_cmds, &other_cmds);
|
load_command_list("git-", &main_cmds, &other_cmds);
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче