Re: Make "gitk" work better with dense revlists
- From
Linus Torvalds <torvalds@osdl.org>
- Date
- Oct 27, 2005, 14:51 UTC
- Message-ID
- <Pine.LNX.4.64.0510270743490.4664@g5.osdl.org>
- In-Reply-To
- <17248.28857.90315.543669@cargo.ozlabs.ibm.com>
On Thu, 27 Oct 2005, Paul Mackerras wrote:
Show 6 quoted lines
> > Linus Torvalds writes: > > > > So this makes gitk just show the diff of _that_ commit. > > Committed and pushed out, but ...
Btw, the "show diff for commit" fails for the root case - you never see the initial commit.
That is definitely correct for big archives that started out of nothing (due to being imported), but it's sad/wrong for something like git itself, and it'a usually wrong when using --dense and a filename, since then the diff is often smaller (ie it might be a simple rename).
Show 5 quoted lines
> > Also, having now tested the previous "handle root commit in the > > TREECHANGED" logic a bit more, I think it's (a) stable and (b) the right > > thing to do. Sign me off on that one too. > > What is that about?
That's just me improving how --dense works wrt root commits. Junio already merged it ("git-rev-list: fix --dense flag")
> I'm hoping to get back to gitk hacking RSN - I've been going flat out > on the ppc32/ppc64 merge. Thanks for doing the --dense thing; I was > thinking about doing something like that inside gitk but doing it in > git-rev-list is better.
A _lot_ better. You'd have been totally screwed performance-wise trying to do it in tcl/tk and executing git-diff-tree for everything.
Show 5 quoted lines
> It does mean that I now want to be able to > get gitk to contract the view to just a given set of files or > directories and then expand back to the whole tree view, which means > running git-rev-list multiple times, which gitk can't do at the > moment...
Yes. And please also give the option to contract the diffs to a set of files (I think that should be independently controlled, although perhaps with some way to set them both at the same time).
Linus