[MERGE] New log formats controlling the display of merge revisions

Stephen J. Turnbull stephen at xemacs.org
Fri Jan 16 01:16:46 GMT 2009


Matthew D. Fuller writes:

 > Look, we do more with log, because of the revno and because of the
 > structuring of mainline vs. remote, than git or hg.  It will
 > necessarily always be slower.

That's true of "git log", but not of "git show-branch" or "gitk".[1]
gitk on Linus's repo takes less than 10 seconds to fill the first
"page", and under 90 seconds to complete.  This on a slow computer
(1.33GHz G4 iBook -- remember, HFS+ is a big performance hit, too).
That means that within 90 seconds git is able to "compute" a
bazillion-node DAG.  "Compute" is in quotes because, of course, git
doesn't *compute* the DAG, it *reads* it.  Ditto Mercurial.  Why bzr
takes so much time I don't know, but I have to suspect that that DAG
information is stored all over kingdom come.

YARF...?[2]


Footnotes: 
[1]  Unless of course the "mainline is special" thing requires more
than just a trivial annotation per commit.  Still, once the DAG is in
memory and topologically sorted, I find it very hard to believe that
average performance of "show me the mainline" is perceptibly worse
than linear for realistic repos.

[2]  Yet Another Repo Format.




More information about the bazaar mailing list