From: Jeff King <peff@peff.net>
To: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com>
Cc: Jonathan Nieder <jrnieder@gmail.com>,
Zero King <l2dy@macports.org>,
Git Mailing List <git@vger.kernel.org>
Subject: [PATCH 3/8] upload-archive: handle "-h" option early
Date: Tue, 30 May 2017 01:13:43 -0400 [thread overview]
Message-ID: <20170530051342.bvunnqymssnvqlt5@sigill.intra.peff.net> (raw)
In-Reply-To: <20170530050949.dkgu3u26qj6ycusy@sigill.intra.peff.net>
Normally upload-archive forks off upload-archive--writer to
do the real work, and relays any errors back over the
sideband channel. This is a good thing when the command is
properly invoked remotely via ssh or git-daemon. But it's
confusing to curious users who try "git upload-archive -h".
Let's catch this invocation early and give a real usage
message, rather than spewing "-h does not appear to be a git
repository" amidst packet-lines. The chance of a false
positive due to a real client asking for the repo "-h" is
quite small.
Likewise, we'll catch "-h" in upload-archive--writer. People
shouldn't be invoking it manually, but it doesn't hurt to
give a sane message if they do.
Signed-off-by: Jeff King <peff@peff.net>
---
builtin/upload-archive.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/builtin/upload-archive.c b/builtin/upload-archive.c
index cde06977b..84532ae9a 100644
--- a/builtin/upload-archive.c
+++ b/builtin/upload-archive.c
@@ -22,7 +22,7 @@ int cmd_upload_archive_writer(int argc, const char **argv, const char *prefix)
struct argv_array sent_argv = ARGV_ARRAY_INIT;
const char *arg_cmd = "argument ";
- if (argc != 2)
+ if (argc != 2 || !strcmp(argv[1], "-h"))
usage(upload_archive_usage);
if (!enter_repo(argv[1], 0))
@@ -76,6 +76,9 @@ int cmd_upload_archive(int argc, const char **argv, const char *prefix)
{
struct child_process writer = { argv };
+ if (argc == 2 && !strcmp(argv[1], "-h"))
+ usage(upload_archive_usage);
+
/*
* Set up sideband subprocess.
*
--
2.13.0.613.g11c956365
next prev parent reply other threads:[~2017-05-30 5:13 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-29 11:45 [Bug] setup_git_env called without repository Zero King
2017-05-29 13:01 ` Ævar Arnfjörð Bjarmason
2017-05-29 15:32 ` Jeff King
2017-05-30 5:09 ` [PATCH 0/8] consistent "-h" handling in builtins Jeff King
2017-05-30 5:11 ` [PATCH 1/8] am: handle "-h" argument earlier Jeff King
2017-05-30 5:43 ` Junio C Hamano
2017-05-30 5:12 ` [PATCH 2/8] credential: handle invalid arguments earlier Jeff King
2017-05-30 5:13 ` Jeff King [this message]
2017-05-30 5:15 ` [PATCH 4/8] remote-{ext,fd}: print usage message on invalid arguments Jeff King
2017-05-30 5:16 ` [PATCH 5/8] submodule--helper: show usage for "-h" Jeff King
2017-05-30 5:17 ` [PATCH 6/8] version: convert to parse-options Jeff King
2017-05-30 20:45 ` [PATCH 6.5?/8] version: move --build-options to a test helper Ævar Arnfjörð Bjarmason
2017-05-30 21:05 ` Jeff King
2017-05-31 15:27 ` Johannes Schindelin
2017-05-31 15:31 ` Jeff King
2017-05-31 15:46 ` Johannes Schindelin
2017-05-31 17:51 ` Ævar Arnfjörð Bjarmason
2017-05-31 21:06 ` Jeff King
2017-05-30 5:18 ` [PATCH 7/8] git: add hidden --list-builtins option Jeff King
2017-05-30 5:19 ` [PATCH 8/8] t0012: test "-h" with builtins Jeff King
2017-05-30 6:03 ` Junio C Hamano
2017-05-30 6:05 ` Jeff King
2017-05-30 6:08 ` Junio C Hamano
2017-05-30 6:15 ` Jeff King
2017-05-30 13:23 ` Junio C Hamano
2017-05-30 15:27 ` Jeff King
2017-05-30 15:44 ` Jeff King
2017-05-30 22:39 ` Junio C Hamano
2017-06-01 4:17 ` Junio C Hamano
2017-06-01 5:35 ` Jeff King
2017-06-01 5:42 ` Junio C Hamano
2017-06-01 5:54 ` Junio C Hamano
2017-06-01 6:25 ` Jeff King
2017-06-01 7:51 ` Junio C Hamano
2017-06-01 6:10 ` Jeff King
2017-06-13 23:08 ` Jonathan Nieder
2017-06-14 10:03 ` Jeff King
2017-05-30 5:52 ` [PATCH 0/8] consistent "-h" handling in builtins Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170530051342.bvunnqymssnvqlt5@sigill.intra.peff.net \
--to=peff@peff.net \
--cc=avarab@gmail.com \
--cc=git@vger.kernel.org \
--cc=jrnieder@gmail.com \
--cc=l2dy@macports.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).