git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: An idea for "git bisect" and a GSoC enquiry

From
Christian Couder <christian.couder@gmail.com>
Date
Feb 27, 2014, 14:47 UTC
Message-ID
<CAP8UFD0Wd3FcgxW+Vb-YKACLqqaeF+AAf=YRScZd84t7qiNkjw@mail.gmail.com>
In-Reply-To
<CAL0uuq0=Zo0X8mYRD6q-Q+QAcZhfmxOwKiRegDrRm3O_i0Q+EA@mail.gmail.com>
Hi,

On Wed, Feb 26, 2014 at 9:28 AM, Jacopo Notarstefano <jacopo.notarstefano@gmail.com> wrote:

Show 24 quoted lines
> Hey everyone,
>
> my name is Jacopo, a student developer from Italy, and I'm interested
> in applying to this years' Google Summer of Code. I set my eyes on the
> project called "git-bisect improvements", in particular the subtask
> about swapping the "good" and "bad" labels when looking for a
> bug-fixing release.
>
> I have a very simple proposal for that: add a new "mark" subcommand.
> Here is an example of how it should work:
>
> 1) A developer wants to find in which commit a past regression was
> fixed. She start bisecting as usual with "git bisect start".
> 2) The current HEAD has the bugfix, so she marks it as fixed with "git
> bisect mark fixed".
> 3) She knows that HEAD~100 had the regression, so she marks it as
> unfixed with "git bisect mark unfixed".
> 4) Now that git knows what the two labels are, it starts bisecting as usual.
>
> For compatibility with already written scripts, "git bisect good" and
> "git bisect bad" will alias to "git bisect mark good" and "git bisect
> mark bad" respectively.
>
> Does this make sense? Did I overlook some details?

As Junio said adding a command "mark" doesn't by itself solve the difficult problems related to this project. (By the way I think it is misleading to state that this GSoC is "easy".)

> There were already several proposals on this topic, among which those
> listed at https://git.wiki.kernel.org/index.php/SmallProjectsIdeas#git_bisect_fix.2Funfixed.
> I'm interested in contacting the prospective mentor, Christian Couder,
> to go over these. What's the proper way to ask for an introduction?
As Michael said, you can just CC me or send me a private email.

But I think the most important thing right now is first to gather as much information as you can from the previous discussions on this topic on this mainling list. Perhaps you should also gather information on how git bisect works.

It will help you understand what are the difficult problems.

One of the problems, for example, is that git bisect can work using a "good" commit that is not an ancestor of the "bad" commit. In this case it will checkout the merge bases between the good and the bad commit. (And by the way this is related to the bug that should also be fixed as part of this project.)

Then you are welcome to come back and ask questions, or suggest solutions.
> I tried asking on IRC, but had no success.
Sorry but I don't use IRC.

Thanks, Christian.

Previous: Junio C HamanoNext: Andrew Ardill
Message 14 of 17 in “An idea for "git bisect" and a GSoC enquiry”
  1. Jacopo NotarstefanoFeb 26, 2014
  2. Junio C HamanoFeb 26, 2014
  3. Jacopo NotarstefanoFeb 28, 2014
  4. Michael HaggertyFeb 27, 2014
  5. Matthieu MoyFeb 27, 2014
  6. Jacopo NotarstefanoFeb 28, 2014
  7. Junio C HamanoFeb 28, 2014
  8. Jacopo NotarstefanoMar 1, 2014
  9. Junio C HamanoMar 3, 2014
  10. Jacopo NotarstefanoMar 12, 2014
  11. Junio C HamanoMar 12, 2014
  12. Michael HaggertyMar 13, 2014
  13. Junio C HamanoMar 13, 2014
  14. Christian CouderFeb 27, 2014
  15. Andrew ArdillFeb 27, 2014
  16. Jacopo NotarstefanoFeb 28, 2014
  17. Jacopo NotarstefanoFeb 28, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.