Linus Torvalds wrote:
On Sat, 27 Jan 2007, Shawn O. Pearce wrote:I think we're *much* better off trying to get people off the "git-blame" mentality entirely._THIS_ is worth doing. I've been having a lot of discussion on #git with Simon 'corecode' Schubert and Chris Lee about how poorly git-blame performs compared to its counterpart in Subversion.Don't screw up git in trying to make "git blame" performance better.
Okay, let's try to assume for now that nobody said "git blame". Instead let's say: git rev-list and git log (with or without -p) perform poorly when invoked with a pathspec.
Which implies that with a slow CPU, and a really humongous archive, it will take much more. Is five seconds slow enough that people think it is slow? Yes. Is 30 seconds approaching painful? Yes. But you should try to aim for really just telling people that it's not a common operation.
I agreee with those numbers. However, on a converted KDE repo, they are *completely* different: git log kdelibs/README takes 1:18. One minute, eighteen seconds. git rev-list and git blame take roughly the same time. This particular file has 64 revisions. However there are ~ 375000 revisions in the converted repo. My and also Shawn's point was not about the speed of git blame itself. It is about pathspec/rev operations. The operation time does not scale with the number of changes to the file/object/call-it-whatever, but with the number of total commits in the branch. That's what we were getting at. Not the superiority of git blame (no irony) and thus reduced speed, but the algorithmic deficiency of any operation on a pathspec/object, which can be easily fixed. cheers simon -- Serve - BSD +++ RENT this banner advert +++ ASCII Ribbon /"\ Work - Mac +++ space for low €€€ NOW!1 +++ Campaign \ / Party Enjoy Relax | http://dragonflybsd.org Against HTML \ Dude 2c 2 the max ! http://golden-apple.biz Mail + News / \
Attachment:
signature.asc
Description: OpenPGP digital signature