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

Re: Fix branch ancestry calculation

From
Keith Packard <keithp@keithp.com>
Date
Mar 25, 2006, 07:54 UTC
Message-ID
<1143273256.6850.86.camel@neko.keithp.com>
In-Reply-To
<20060325014532.GB32522@pe.Belkin>
On Fri, 2006-03-24 at 20:45 -0500, Chris Shoemaker wrote:
> If that last sentence was a typo then you already know this, but
> otherwise you may be disappointed to learn that it's not _always_
> possible to discern the correct ancestry tree.

Sure, it's possible to generate trees which can't be figured out. So far, I haven't found any which can't be pieced back together, except in cases where the tree was accidentally damaged (child branches created on two separate parent branches)

> If you end up comparing the ancestry tree discovered by your tool and
> the tree output by a patched cvsps, I would be very interested in the
> results.

So far, I've found several concrete trees where cvsps (in any form) assigns branch points many versions too early compared to the 'true' history. My tool is getting better answers, but still can't compute the tree for the X.org X server tree yet. That one has a wide variety of damage, including the direct copying of ,v files between repositories which had divered, and the accidental branching of files from different parent branches. I keep poking at it...

> -chris
> 
> (*) You can distinguish between A->B->head and B->A->head simply by
> date.

I'm doing a lot more date-based identification than I'm really comfortable with; the bad thing here is that branch points can occur long before any commits to that branch, when doing date-based operations, you have a range of possible matching branch points and it's hard to disambiguate.

-- 
keith.packard@intel.com
Previous: Chris Shoemaker
Message 11 of 11 in “Fix branch ancestry calculation”
  1. Linus TorvaldsMar 23, 2006
  2. [RFC] Make dot-counting ignore ".1" at the endLinus Torvalds, Mar 23, 2006
  3. Keith PackardMar 23, 2006
  4. Linus TorvaldsMar 23, 2006
  5. Keith PackardMar 23, 2006
  6. David MansfieldMar 24, 2006
  7. David MansfieldMar 24, 2006
  8. Linus TorvaldsMar 24, 2006
  9. Keith PackardMar 24, 2006
  10. Chris ShoemakerMar 25, 2006
  11. Keith PackardMar 25, 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.