Jeff King <peff@xxxxxxxx> writes: > On Thu, Dec 21, 2023 at 08:30:36AM +0100, René Scharfe wrote: >> ... >> Don't we have one? It would affect other unsupported options as well, >> and this seems to work just fine, e.g.: >> ... > Right. The whole idea of upload-archive is to spawn a separate writer > process and mux the conversation (including errors) back over the wire. Thanks, both. Just to tie the loose end, let me queue this and merge it to 'next'. ----- >8 --------- >8 --------- >8 ----- Subject: [PATCH] archive: "--list" does not take further options "git archive --list blah" should notice an extra command line parameter that goes unused. Make it so. Signed-off-by: Junio C Hamano <gitster@xxxxxxxxx> --- archive.c | 2 ++ t/t5000-tar-tree.sh | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/archive.c b/archive.c index ca11db185b..8da820d1ce 100644 --- a/archive.c +++ b/archive.c @@ -685,6 +685,8 @@ static int parse_archive_args(int argc, const char **argv, base = ""; if (list) { + if (argc) + die(_("extra command line parameter '%s'"), *argv); for (i = 0; i < nr_archivers; i++) if (!is_remote || archivers[i]->flags & ARCHIVER_REMOTE) printf("%s\n", archivers[i]->name); diff --git a/t/t5000-tar-tree.sh b/t/t5000-tar-tree.sh index 4b4c3315d8..72b8d0ff02 100755 --- a/t/t5000-tar-tree.sh +++ b/t/t5000-tar-tree.sh @@ -124,6 +124,16 @@ test_expect_success 'setup' ' EOF ' +test_expect_success '--list notices extra parameters' ' + test_must_fail git archive --list blah && + test_must_fail git archive --remote=. --list blah +' + +test_expect_success 'end-of-options is correctly eaten' ' + git archive --list --end-of-options && + git archive --remote=. --list --end-of-options +' + test_expect_success 'populate workdir' ' mkdir a && echo simple textfile >a/a && -- 2.43.0-174-g055bb6e996