emacs-devel
[Top][All Lists]
Advanced

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

Re: PROPOSAL: Move to git, now that bzr is no longer a req.


From: Jordi Gutiérrez Hermoso
Subject: Re: PROPOSAL: Move to git, now that bzr is no longer a req.
Date: Mon, 06 Jan 2014 12:57:49 -0500

On Mon, 2014-01-06 at 18:09 +0200, Eli Zaretskii wrote:

> E.g., try xdisp.c: it takes git more than 4 minutes to display
> anything in response to "C-x v g" (2 minutes if done from the
> shell). Looking into ChangeLog's is surely faster.

As a point of comparsion, on my system

    $ time hg blame xdisp.c > foo

    real  0m55.426s
    user  0m54.083s
    sys   0m1.032s

    $ time git blame xdisp.c > foo

    real  3m24.979s
    user  3m5.920s
    sys   0m3.032s

I suppose this is because git's data structures aren't very fast for
single-file operations. The only way to get data for a single file in
git is to walk the entire changelog and grab all associated tree
objects looking for the blob you care about. Hg's data structures
instead, changes across a single file using a so-called revlog, which
is a series per-file deltas with occasional full file copies (the
analogy for revlogs is video compression with key frames).

- Jordi G. H.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]