From: Junio C Hamano <gitster@pobox.com>
To: Wincent Colaiuta <win@wincent.com>
Cc: git@vger.kernel.org
Subject: Re: git.c option parsing
Date: Mon, 17 Dec 2007 00:48:23 -0800 [thread overview]
Message-ID: <7vsl21aeqw.fsf@gitster.siamese.dyndns.org> (raw)
In-Reply-To: <F6F3247E-4E71-4977-9626-F0571278E1E6@wincent.com> (Wincent Colaiuta's message of "Mon, 17 Dec 2007 09:27:12 +0100")
Wincent Colaiuta <win@wincent.com> writes:
> Of course, the above plan will only work for builtins, not for
> scripts. An additional step would be needed to enable scripts to
> handle these options; perhaps teaching "git rev-parse" something...
As long as special options stay special and we make a rule not to allow
any subcommand to assign its own meaning to them, the git wrapper can
lookahead and reorder, when seeing a command line:
git scripted-command --special
into
git --special scripted-command
And that approach would work well for built-ins as well, I would
imagine.
There is one minor detail, though. There could be an option-parameter
that is literally --special. E.g.
git grep -e --no-paginate
should not be reordered to
git --no-paginate grep -e
next prev parent reply other threads:[~2007-12-17 8:48 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-14 11:23 [PATCH 0/3] diff topic tweaks Wincent Colaiuta
2007-12-14 11:23 ` [PATCH 1/3] Revert changes and extend diff option documentation Wincent Colaiuta
2007-12-14 11:23 ` [PATCH 2/3] Use shorter error messages for whitespace problems Wincent Colaiuta
2007-12-14 11:23 ` [PATCH 3/3] Test interaction between diff --check and --exit-code Wincent Colaiuta
2007-12-16 19:43 ` [PATCH 1/3] Revert changes and extend diff option documentation Junio C Hamano
2007-12-17 8:27 ` git.c option parsing (was: [PATCH 1/3] Revert changes and extend diff option documentation) Wincent Colaiuta
2007-12-17 8:48 ` Junio C Hamano [this message]
2007-12-17 9:01 ` git.c option parsing Wincent Colaiuta
2007-12-17 9:20 ` Pierre Habouzit
2007-12-17 9:26 ` Pierre Habouzit
2007-12-17 9:50 ` [PATCH] Have a flag to stop the option parsing at the first argument Pierre Habouzit
2007-12-17 10:34 ` Johannes Schindelin
2007-12-17 11:10 ` Wincent Colaiuta
2007-12-17 11:47 ` Pierre Habouzit
2007-12-17 11:50 ` Johannes Schindelin
2007-12-17 12:06 ` Wincent Colaiuta
2007-12-17 12:26 ` Johannes Schindelin
2007-12-17 12:40 ` Wincent Colaiuta
2007-12-17 12:55 ` Johannes Schindelin
2007-12-17 13:12 ` Wincent Colaiuta
2007-12-17 13:30 ` Johannes Schindelin
2007-12-17 13:57 ` Wincent Colaiuta
2007-12-17 15:13 ` Johannes Sixt
2007-12-17 16:29 ` Pierre Habouzit
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7vsl21aeqw.fsf@gitster.siamese.dyndns.org \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=win@wincent.com \
/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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.