git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCH] push: comment on a funny unbalanced option help
@ 2018-08-01 18:43 Junio C Hamano
  2018-08-01 20:46 ` Ævar Arnfjörð Bjarmason
  2018-08-01 22:57 ` Jonathan Nieder
  0 siblings, 2 replies; 38+ messages in thread
From: Junio C Hamano @ 2018-08-01 18:43 UTC (permalink / raw)
  To: git

The option help text for the force-with-lease option to "git push"
reads like this:

    $ git push -h 2>&1 | grep -e force-with-lease
       --force-with-lease[=<refname>:<expect>]

which come from this

 		  0, CAS_OPT_NAME, &cas, N_("refname>:<expect"),

in the source code, with an aparent lack of "<" and ">" at both
ends.

It turns out that parse-options machinery takes the whole string and
encloses it inside a pair of "<>", expecting that it is a single
placeholder.  The help string was written in a funnily unbalanced
way knowing that the end result would balance out.

Add a comment to save future readers from wasting time just like I
did ;-)

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 builtin/push.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/builtin/push.c b/builtin/push.c
index 9cd8e8cd56..9608b0cc4f 100644
--- a/builtin/push.c
+++ b/builtin/push.c
@@ -558,6 +558,7 @@ int cmd_push(int argc, const char **argv, const char *prefix)
 		OPT_BIT( 0,  "porcelain", &flags, N_("machine-readable output"), TRANSPORT_PUSH_PORCELAIN),
 		OPT_BIT('f', "force", &flags, N_("force updates"), TRANSPORT_PUSH_FORCE),
 		{ OPTION_CALLBACK,
+		  /* N_() will get "<>" around, resulting in "<refname>:<expect>" */
 		  0, CAS_OPT_NAME, &cas, N_("refname>:<expect"),
 		  N_("require old value of ref to be at this value"),
 		  PARSE_OPT_OPTARG, parseopt_push_cas_option },
-- 
2.18.0-321-gffc6fa0e39


^ permalink raw reply related	[flat|nested] 38+ messages in thread

end of thread, other threads:[~2018-08-03 15:30 UTC | newest]

Thread overview: 38+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-01 18:43 [PATCH] push: comment on a funny unbalanced option help Junio C Hamano
2018-08-01 20:46 ` Ævar Arnfjörð Bjarmason
2018-08-01 21:48   ` Junio C Hamano
2018-08-01 22:31     ` Ævar Arnfjörð Bjarmason
2018-08-02 12:16       ` René Scharfe
2018-08-02 14:21         ` Ævar Arnfjörð Bjarmason
2018-08-02 15:06           ` René Scharfe
2018-08-02 15:16             ` René Scharfe
2018-08-02 15:24           ` Junio C Hamano
2018-08-02 15:31         ` Junio C Hamano
2018-08-02 16:50           ` René Scharfe
2018-08-02 16:54           ` Jeff King
2018-08-02 18:46             ` René Scharfe
2018-08-02 19:17               ` [PATCH 1/6] add, update-index: fix --chmod argument help René Scharfe
2018-08-02 20:41                 ` Ævar Arnfjörð Bjarmason
2018-08-02 20:59                 ` Ramsay Jones
2018-08-02 21:17                   ` Junio C Hamano
2018-08-02 21:04                 ` Andrei Rybak
2018-08-02 21:16                   ` Junio C Hamano
2018-08-02 19:17               ` [PATCH 2/6] difftool: remove angular brackets from " René Scharfe
2018-08-02 19:17               ` [PATCH 3/6] pack-objects: specify --index-version argument help explicitly René Scharfe
2018-08-02 19:17               ` [PATCH 4/6] send-pack: specify --force-with-lease " René Scharfe
2018-08-02 19:18               ` [PATCH 5/6] shortlog: correct option help for -w René Scharfe
2018-08-02 19:18               ` [PATCH 6/6] parse-options: automatically infer PARSE_OPT_LITERAL_ARGHELP René Scharfe
2018-08-02 20:05                 ` Junio C Hamano
2018-08-03  8:13                 ` Kerry, Richard
2018-08-03 10:39                 ` Kerry, Richard
2018-08-02 20:01               ` [PATCH] push: comment on a funny unbalanced option help Junio C Hamano
2018-08-02 22:38                 ` René Scharfe
2018-08-03 15:29                   ` Junio C Hamano
2018-08-02 15:44     ` Re* " Junio C Hamano
2018-08-02 15:59       ` René Scharfe
2018-08-02 16:23         ` Junio C Hamano
2018-08-02 20:33           ` Ævar Arnfjörð Bjarmason
2018-08-02 20:36             ` Junio C Hamano
2018-08-03  4:42               ` René Scharfe
2018-08-03 15:30                 ` Junio C Hamano
2018-08-01 22:57 ` Jonathan Nieder

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).