From: Junio C Hamano Date: Thu, 29 Oct 2026 18:04:46 GMT Subject: Re: [Outreachy PATCH v2 1/2] fast-import: handle --git-completion-helper before reading input Message-ID: In-Reply-To: <20261029012616.139783-1-tangajoris@gmail.com> Tanga Joris writes: > diff --git a/builtin/fast-import.c b/builtin/fast-import.c > index 9db3f83eea..f53113d5a5 100644 > --- a/builtin/fast-import.c > +++ b/builtin/fast-import.c > @@ -4204,6 +4204,10 @@ int cmd_fast_import(int argc, > }; > > show_usage_with_options_if_asked(argc, argv, fast_import_usage, fast_import_options); > + if (argc == 2 && (!strcmp(argv[1], "--git-completion-helper") || > + !strcmp(argv[1], "--git-completion-helper-all"))) > + parse_options(argc, argv, prefix, fast_import_options, > + fast_import_usage, 0); > > fast_import_state_init(&state, argc, argv, prefix, fast_import_options); It is way too ugly to target this so specifically. I wonder if we can teach show_usage_with_options_if_asked() to do this? With this, and the above reverted, the new test added to t9300 in this patch seems to pass. parse-options.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git c/parse-options.c w/parse-options.c index 283a0f1dc2..f2a23b79a4 100644 --- c/parse-options.c +++ w/parse-options.c @@ -1536,6 +1536,12 @@ void show_usage_with_options_if_asked(int ac, const char **av, usage_with_options_internal(NULL, usagestr, opts, USAGE_FULL, USAGE_TO_STDOUT); exit(0); + } else if (!strcmp(av[1], "--git-completion-helper")) { + show_gitcomp(opts, 0); + exit(0); + } else if (!strcmp(av[1], "--git-completion-helper-all")) { + show_gitcomp(opts, 1); + exit(0); } } }