Re: That improved git-gui blame viewer..
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Jun 13, 2007, 16:50 UTC
- Message-ID
- <Pine.LNX.4.64.0706131748400.4059@racer.site>
- In-Reply-To
- <200706131827.08163.Josef.Weidendorfer@gmx.de>
Hi,
On Wed, 13 Jun 2007, Josef Weidendorfer wrote:
Show 12 quoted lines
> On Wednesday 13 June 2007, Johannes Schindelin wrote: > > ~1.4s log _with_ --pretty=raw > > ~3.5s log _with_ --pretty=raw _and_ -z (!) > > That happens on linux, too. > > I am not really familiar with that code, but comparision > of the call graphs of "git log" vs. "git log -z", as > produced by callgrind (shameless plug) and visualized > by kcachegrind (again, another shameless plug) shows > that the difference happens in log_tree_diff, called > >from log_tree_commit.
That's a cool trick!
And indeed it is:
This code in revision.c is responsible:
1181 opts = diff_opt_parse(&revs->diffopt, argv+i, argc-i); 1182 if (opts > 0) { 1183 revs->diff = 1; 1184 i += opts - 1; 1185 continue; 1186 }
Now, to tell which diff options actually need revs->diff to be set to 1, that is the question.
Ciao, Dscho