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

Re: Regarding gitk

From
Paul Mackerras <paulus@samba.org>
Date
May 14, 2005, 07:47 UTC
Message-ID
<17029.44307.356844.438027@cargo.ozlabs.ibm.com>
In-Reply-To
<20050513051923.GA15116@htj.dyndns.org>
Hi Tejun,
>  First of all, thanks a lot for gitk.  I was working on something using
> graphviz/pygtk to do about the same thing for a couple of weeks (and got
> pretty far with it) but ditched it as gitk seemed much better.  I really
> love how gitk shows the commit graph. :-)
Yes, I was pleased with how it turned out.
Show 5 quoted lines
>  As I don't wanna ditch any more of my time, it would be great if you
> let me know what you're currently working on, so that I can coordinate
> with you.  Here are the things I have on mind.
> 
> * integrate two-way diff view w/ diff map into gitk from mgdiff.

I guess mgdiff and dirdiff do very similar things, although dirdiff can display the diffs between up to 5 trees (limited mainly by the number of easily distinguishable colors between red and green). Doing 3-way diffs is useful for most merges (diffing the output vs. the inputs) and for diffing two arbitrary commits (diffing the two vs. the nearest common ancestor).

I recently changed dirdiff to be able to diff git commits with each other or the working directory, and I was intending to add a way to invoke that from gitk.

> * show the current cache and working files at the head of graph

Interesting idea. I had mostly been thinking of gitk in terms of the way I use it, which is to help me follow what others are doing rather than looking at what I have done.

> * demand-load commits as the user scrolls down the graph

It would be nice to at least be a bit asynchronous, so that the graph is drawn as the commits are read, rather than having to wait for all the commits are read before anything is drawn. I need to hack git-rev-tree, I guess.

>  I wrote a commit viewing utility (gitkdiff) modified from mgdiff two
> weeks ago so I'm quite familiar with mgdiff source, and implemented
> demand-loading of commits in my own project in python, but writing a
> separate c utility with the same algorithm wouldn't take that much time.

Does that algorithm let you say "commits reachable from A but not from B" like git-rev-tree does?

Regards, Paul.

Previous: Tejun Heo
Message 2 of 2 in “Regarding gitk”
  1. Tejun HeoMay 13, 2005
  2. Paul MackerrasMay 14, 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.