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

Re: git-viz tool for visualising commit trees

From
OAOlivier Andrieu <oandrieu@nerim.net>
Date
Apr 21, 2005, 20:14 UTC
Message-ID
<20050421.221441.85407120.oandrieu@nerim.net>
In-Reply-To
<20050421143840.GA14059@elte.hu>
 > Ingo Molnar [Thu, 21 Apr 2005]:
 > I just checked how the kernel repository looks like with it, and
 > i'm impressed! The GUI is top-notch, and the whole graph output and
 > navigation is very mature visually. Kudos!
Thanks !
 > - there doesnt seem to be any performance difference between non-colored 
 >   and colored rendering - so you might as well want to make 'color by 
 >   author' (or color by branch) the default coloring, instead of 
 >   uncolored?

It has to call `cat-file commit' for each commit id to get the author ... it's just that's a lot of forks.

 > - naming the boxes by key is quite meaningless. It would be more 
 >   informative to see the author's email shortcuts in the boxes. Also, it 
 >   would be nice to see some simple graphical feedback about the size and 
 >   scope of a changeset, without having to zoom on it.
That's interesting. What do you mean exactly by scope ?
 > i guess you know it, and i'm definitely not complaining about prototype 
 > code, but rendering is quite slow: drawing the 340 changesets in the 
 > current kernel repository takes 15 seconds on a 2 GHz P4. Drawing the 
 > full kernel history (63,000 changesets) would take more than 45 minutes 
 > on this box.
 > 
 > the current rate of kernel development is ~2000 changesets per month, so 
 > drawing the kernel history will get 3 seconds slower every day - it will 
 > exceed 1 minute in 20 days, so this will become a pressing issue quite 
 > soon i suspect.

Right, it is slow. From what I could understand with a bit of profiling, the problem is with the "text" canvas item for the boxes' labels. I guess libgnomecanvas isn't using Pango properly or something: it lookups the font with fontconfig each time I create such an item. I'm not sure what I can do about this.

Also, there's a -noaa option that draws an non-antialiased canvas : it's noticeably faster (and uglier too).

 > Ingo Molnar [Thu, 21 Apr 2005]:
 > another thing, when i 'zoom out' of the graph far away (so that the 
 > whole graph becomes visible on the screen), i'm getting lots of such 
 > error messages:
 > 
 >  *** attempt to put segment in horiz list twice

Yes, this message must come from one of the libraries (libart most probably)

 > Ingo Molnar [Thu, 21 Apr 2005]:
 > is the 'diff with ancestor' feature supposed to work at this early
 > stage? (it just does nothing when i click on it. It correctly
 > offers two ancestors for merge points, but does nothing there
 > either.)

It works with Petr Baudis' git-pasky (it calls `git diff'). I don't know how to do that with the canonical git.

Thanks for the suggestions,
-- 
   Olivier
Previous: Petr BaudisNext: Ingo Molnar
Message 16 of 17 in “git-viz tool for visualising commit trees”
  1. Petr BaudisApr 17, 2005
  2. Ingo MolnarApr 20, 2005
  3. Petr BaudisApr 20, 2005
  4. Olivier AndrieuApr 20, 2005
  5. Olivier AndrieuApr 21, 2005
  6. Ingo MolnarApr 21, 2005
  7. Remi VanicatApr 21, 2005
  8. Olivier AndrieuApr 21, 2005
  9. Ingo MolnarApr 21, 2005
  10. Vincent HanquezApr 21, 2005
  11. Olivier AndrieuApr 21, 2005
  12. Ingo MolnarApr 21, 2005
  13. Ingo MolnarApr 21, 2005
  14. Ingo MolnarApr 21, 2005
  15. Petr BaudisApr 21, 2005
  16. Olivier AndrieuApr 21, 2005
  17. Ingo MolnarApr 21, 2005

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.