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

Re: git-bisect problem

From
Petr Baudis <pasky@suse.cz>
Date
Feb 14, 2006, 01:27 UTC
Message-ID
<20060214012755.GC31278@pasky.or.cz>
In-Reply-To
<20060214011512.GB31278@pasky.or.cz>

Dear diary, on Tue, Feb 14, 2006 at 02:15:12AM CET, I got a letter where Petr Baudis <pasky@suse.cz> said that...

Show 51 quoted lines
> Dear diary, on Tue, Feb 14, 2006 at 01:56:20AM CET, I got a letter
> where Andrew Morton <akpm@osdl.org> said that...
> > Junio C Hamano <junkio@cox.net> wrote:
> > >
> > > Sorry, this question is what I do not quite understand.
> > > 
> > >  Here is my understanding of the situation.
> > > 
> > >   - Betweeen 2.6.16-rc1 and 2.6.16-rc2 a bug you are chasing was
> > >     introduced.  You know rc1 works fine but rc2 is bad.
> > > 
> > >   - You suspect that changes introduced by merging Jeff's tree
> > >     at some point between -rc1 and -rc2 may be causing this.
> > > 
> > >  Am I totally misunderstanding the situation?
> > 
> > yup ;)
> > 
> > The bug is in Jeff's tree only
> > (git+ssh://master.kernel.org/pub/scm/linux/kernel/git/jgarzik/netdev-2.6.git#ALL)
> > so I wanted to perform the bisection on the git-netdev-all branch.
> > 
> > So I did a `git log git-netdev-all' and looked at where the ipw2200 changes
> > were and then decided that the 2.6.16-rc1 and 2.6.16-rc2 commits straddled
> > those changes nicely, so I chose those as the bisection starting points.
> 
> But aren't those commits on the Linus' "branch", not containing any
> commits specific to git-netdev-all?
> 
> I imagine the situation is like:
> 
> * -- 2.6.16-rc1  -- * -- * -- 2.6.16-rc2  -- * - -  (linus)
>   \                        \              \
> * -- * -- * -- * -- * -- * -- * -- * -- * -- M - -  (git-netdev-all)
> 
> Then, if you bisect between -rc2 and -rc1, you will never actually get
> to the git-netdev-all branch, since there are no such commits inbetween
> -rc2 and -rc1. Even if you consider this:
> 
> * -- 2.6.16-rc1  -- * -- * -- 2.6.16-rc2  -- * - -  (linus)
>   \              /         \              \
> * -- X -- Y -- Z -- A -- * -- * -- * -- * -- M - -  (git-netdev-all)
> 
> git-bisect will consider the X, Y, Z commits (since they are part of the
> ancestry between -rc and -rc2), but not commits from A on - it can't
> reach them topologically if it considers only commits between -rc1 and
> -rc2:
> 
> * -- 2.6.16-rc1  -- * -- * -- 2.6.16-rc2
>   \              /
>    - X -- Y -- Z

I got this one (and consequently, the following one) wrong - obviously, it should read as

       2.6.16-rc1  -- * -- * -- 2.6.16-rc2
                   /
       X -- Y -- Z
since the "asterisk" commit is already behind -rc1.
Pedagogical excursion:

All those commit intervals are really set differences - if you have commit A and commit B,

	[A,B] = B \cup (ancestry(B) \ ancestry(A))

or if you don't like math, color B and all its ancestors blue in your head, and then color all the A ancestors black. The commits that stay blue are in the [A,B] interval.

-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
Of the 3 great composers Mozart tells us what it's like to be human,
Beethoven tells us what it's like to be Beethoven and Bach tells us
what it's like to be the universe.  -- Douglas Adams
Previous: Petr BaudisNext: Junio C Hamano
Message 22 of 23 in “git-bisect problem”
  1. Andrew MortonFeb 13, 2006
  2. Junio C HamanoFeb 13, 2006
  3. Andrew MortonFeb 13, 2006
  4. Ryan AndersonFeb 13, 2006
  5. Andrew MortonFeb 13, 2006
  6. Fernando J. PeredaFeb 13, 2006
  7. Luben TuikovFeb 13, 2006
  8. Luben TuikovFeb 13, 2006
  9. cat-file (was Re: git-bisect problem)Joshua N Pritikin, Feb 13, 2006
  10. Ryan AndersonFeb 13, 2006
  11. Andrew MortonFeb 13, 2006
  12. Linus TorvaldsFeb 13, 2006
  13. Luben TuikovFeb 13, 2006
  14. Andrew MortonFeb 13, 2006
  15. Junio C HamanoFeb 14, 2006
  16. Junio C HamanoFeb 13, 2006
  17. Andrew MortonFeb 13, 2006
  18. Junio C HamanoFeb 14, 2006
  19. Andrew MortonFeb 14, 2006
  20. Linus TorvaldsFeb 14, 2006
  21. Petr BaudisFeb 14, 2006
  22. Petr BaudisFeb 14, 2006
  23. Junio C HamanoFeb 14, 2006

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.