Re: More precise tag following

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Sat, 27 Jan 2007, Linus Torvalds wrote:
> 
> Here's a patch. Use "git blame --incremental filename" to get the blame 
> output in a nicely parseable format that you can now write a simple 
> graphical viewer for. 

Btw, the more I play with this, the more I curse the fact that I don't 
know tcltk enough to actually enjoy the full effect.

But in the kernel, with the patch I just sent out, try

	PAGER= git blame -C --incremental block/ll_rw_blk.c

(because using a pager for the output just detracts from the whole 
experience.

I think it's really cool how it notices the chunks coming in from the 
rename, and starts giving different names - and for some reason I didn't 
delve into it actually seems to find some of the changes from the old 
location before it have pinpointed all of the changes from the new one 
etc..

(That's a fairly expensive file to check, so it takes almost ten seconds 
for me to generate blame for. But with the incremental output, you really 
don't mind, because it finds the "new changes" immediately, so it's really 
the old and relatively uninteresting stuff that will only be found at the 
end).

This should be an example of how important interfaces can be to what feels 
"slow".

Btw, Junio - even if nobody writes a graphical front-end for that 
"--incremental" flag, this should be in 1.5.0. If only so that people 
could write those front-ends and not have to patch git to get the blame 
information out of it.

The exact format for the output of this thing is obviously very debatable: 
it might well be worthwhile to use a more verbose thing that also gives 
the commit name and date etc information (since git-blame knows it), so 
that any graphical front-end doesn't need to look up every commit as it 
comes out of the incremntal blame engine. I just wrote it as a quick 
"proof of concept" thing, and the output is obviously pretty minimalistic 
right now.

		Linus
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]