From: Christian Couder <chriscool@tuxfamily.org>
To: John Tapsell <johnflux@gmail.com>
Cc: Git Mailing List <git@vger.kernel.org>
Subject: Re: More git bisect modes
Date: Thu, 5 Mar 2009 21:53:41 +0100 [thread overview]
Message-ID: <200903052153.41391.chriscool@tuxfamily.org> (raw)
In-Reply-To: <43d8ce650903050149u4ca98444w28efceb9084efa68@mail.gmail.com>
Le jeudi 5 mars 2009, John Tapsell a écrit :
> Hi,
>
> Although "git bisect" is called, well, bisect, it would be nice to
> have other modes.
>
> * A completely linear version - check every version. Particularly
> useful after rebasing to make sure all the commits still compile.
I will answer this one bellow along with the exponential back-off.
> * An allow-for-mistakes-bisect. This would use a bisection technique
> that would allow for a minimum of 1 mistake when marking a commit good
> or bad. This point isn't particularly to help those with fat fingers,
> but for bugs that are subtle and for bugs that are caused by multiple
> commits. (I can go into the details of how to do such a bisect
> later).
Yeah, Ingo Molnar also asked for something like this. But I think it is
quite complex. I hope it will be easier after the improvements I am
currently working on. I hope to send something early next week.
> * An exponential back-off. Typically I know that HEAD is broken, and
> I don't know when it used to work. It would be nice to exponentially
> go back through the commits to find the first working commit, then
> bisect from there.
I think your first idea above and this one could be implemented in a new
command called for example "git check".
It could be used it like this:
$ git check COMMAND $(git rev-list HEAD~10..)
that would check out each of the 10 last revisions and run COMMAND on each
one after check out, and at the end it could report about the exit code of
command for each of these revisions.
It could be used also with tags like that:
$ git check COMMAND $(git tag | tail -10)
After that a --bisect flag could be implemented. That would automatically
call "git bisect" to bisect if the exit code changed from "bad" to "good"
at one point.
Then if one adds a --expo flag to "git rev-list" that could be used for the
exponential back off you want.
> Before I start working on the code for any of these, do people like
> this? Would this fit into the 'git bisect' command?
I think it would be usefull, but I don't think the first and last one would
fit well into the "git bisect" command.
Best regards,
Christian.
prev parent reply other threads:[~2009-03-05 20:56 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-05 9:49 More git bisect modes John Tapsell
2009-03-05 10:05 ` Nanako Shiraishi
2009-03-05 10:17 ` John Tapsell
2009-03-05 10:31 ` Junio C Hamano
2009-03-05 11:09 ` bisect run, was " Johannes Schindelin
2009-03-05 11:18 ` John Tapsell
2009-03-05 11:31 ` Johannes Schindelin
2009-03-05 20:59 ` Christian Couder
2009-03-05 20:53 ` Christian Couder [this message]
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=200903052153.41391.chriscool@tuxfamily.org \
--to=chriscool@tuxfamily.org \
--cc=git@vger.kernel.org \
--cc=johnflux@gmail.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 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 NNTP newsgroup(s).