From: Pierre Habouzit <madcoder@debian.org>
To: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Cc: "Björn Steinbrink" <B.Steinbrink@gmx.de>,
"Kristian Høgsberg" <krh@redhat.com>,
"Junio C Hamano" <gitster@pobox.com>,
git@vger.kernel.org
Subject: Re: [PATCH 4/4] Implement git commit and status as a builtin commands.
Date: Tue, 06 Nov 2007 10:12:22 +0100 [thread overview]
Message-ID: <20071106091222.GE4435@artemis.corp> (raw)
In-Reply-To: <Pine.LNX.4.64.0711052317170.4362@racer.site>
[-- Attachment #1: Type: text/plain, Size: 2717 bytes --]
On Mon, Nov 05, 2007 at 11:18:36PM +0000, Johannes Schindelin wrote:
> Hi,
>
> On Mon, 5 Nov 2007, Bj?rn Steinbrink wrote:
>
> > On 2007.11.05 13:57:53 -0500, Kristian H?gsberg wrote:
> >
> > > The shell script just has
> > >
> > > case "$all,$interactive,$also,$#" in
> > > *t,*t,*)
> > > die "Cannot use -a, --interactive or -i at the same time." ;;
> > >
> > > which doesn't seem to care about the value of $also. As far as I
> > > understand git commit, it doesn't make sense to pass any of -a, -i, -o
> > > or --interactive at the same time so I guess I could join the checks
> >
> > Note that there are only two commas. The asterisks catch everything and
> > $# won't be "t", so that catches anything with at least two t's.
>
> So shouldn't it be
>
> if (!!all + !!interactive + !!also > 1)
Btw, I'm starting to work slowly on the diff_opt_parse conversion to the
macro we discussed, and the need for new option parsing callbacks
arised, and I've created a:
parse_opt_mask_{or,and,xor} commands that you declare this way:
OPT_MASK_OR('a', "all", &mode, "...", MASK_ALL),
OPT_MASK_OR('i', "interactive", &mode, "...", MASK_INTERACTIVE),
...
And if you chose MASK_ALL/INTERACTIVE/.. to be single bits,
if (!!all + !!interactive ... > 1)
becomes[0]:
if (mode & (mode - 1)) {
}
I've not read your patch thoroughly, but if you feel such a thing would
help you, I could send a preliminar set of patches to enable this
feature for people that may need it. Though you can look at my WIP on my
git public repository[1].
For those who care, this need arised because parse_diff_opts have a
_lot_ of single bit options, and that expansing it on many many full
blown integers looked like a regression, so I took the option to have a
`flags` member with explicit masks, and those masks will be used from
the parse-option callbacks[2]
[0] for those who don't already know it, (i & (i - 1)) == 0
iff i is 0 or a power of 2.
[1] the patch[3]:
http://git.madism.org/?p=git.git;a=commitdiff;h=9d75b0a00915fa81657934f36318c1c0f5bac96b
example of use:
http://git.madism.org/?p=git.git;a=commitdiff;h=74aacc487579d0cbd638adf883e743caeaee0f76
http://git.madism.org/?p=git.git;a=commitdiff;h=af15793dde94119faa1577c9eec7e839ae628011
[2] http://git.madism.org/?p=git.git;a=commitdiff;h=86032204f1bdf5da2fee555ec917709b3e6f662c#patch10
[3] oh boy gitweb urls are really way too long :/
--
·O· Pierre Habouzit
··O madcoder@debian.org
OOO http://www.madism.org
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2007-11-06 9:12 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-02 15:33 [PATCH 1/4] Add testcase for ammending and fixing author in git commit Kristian Høgsberg
2007-11-02 15:33 ` [PATCH 2/4] Remove unecessary hard-coding of EDITOR=':' VISUAL=':' in some test suites Kristian Høgsberg
2007-11-02 15:33 ` [PATCH 3/4] Export launch_editor() and make it accept ':' as a no-op editor Kristian Høgsberg
2007-11-02 15:33 ` [PATCH 4/4] Implement git commit and status as a builtin commands Kristian Høgsberg
2007-11-03 13:56 ` Johannes Schindelin
2007-11-08 16:01 ` Kristian Høgsberg
2007-11-03 15:06 ` Björn Steinbrink
2007-11-05 18:57 ` Kristian Høgsberg
2007-11-05 19:23 ` Björn Steinbrink
2007-11-05 23:18 ` Johannes Schindelin
2007-11-06 6:59 ` Björn Steinbrink
2007-11-06 16:46 ` Kristian Høgsberg
2007-11-06 17:08 ` Björn Steinbrink
2007-11-06 9:12 ` Pierre Habouzit [this message]
2007-11-06 9:18 ` Johannes Sixt
2007-11-06 9:26 ` Pierre Habouzit
2007-11-06 9:47 ` Andreas Ericsson
2007-11-06 16:42 ` Kristian Høgsberg
2007-11-02 15:46 ` [PATCH 3/4] Export launch_editor() and make it accept ':' as a no-op editor Andreas Ericsson
2007-11-02 16:16 ` Kristian Høgsberg
2007-11-02 20:09 ` [PATCH 2/4] Remove unecessary hard-coding of EDITOR=':' VISUAL=':' in some test suites Junio C Hamano
2007-11-02 20:07 ` [PATCH 1/4] Add testcase for ammending and fixing author in git commit Junio C Hamano
2007-11-02 21:13 ` Kristian Høgsberg
2007-11-02 22:33 ` 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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20071106091222.GE4435@artemis.corp \
--to=madcoder@debian.org \
--cc=B.Steinbrink@gmx.de \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=krh@redhat.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.