git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] git-svn: use git-log rather than rev-list | xargs cat-file

From
EWEric Wong <normalperson@yhbt.net>
Date
Jun 12, 2007, 06:17 UTC
Message-ID
<20070612061753.GA4080@muzzle>
In-Reply-To
<7vhcpfrlk1.fsf@assigned-by-dhcp.pobox.com>
Junio C Hamano <gitster@pobox.com> wrote:
Show 14 quoted lines
> Eric Wong <normalperson@yhbt.net> writes:
> 
> > Sam Vilain <sam@vilain.net> wrote:
> >> This saves a bit of time when rebuilding the git-svn index.
> >
> > Does git-log still have the 16k buffer limit?  If so then we can't use
> > it because commit messages over 16k will be truncated and the git-svn-id
> > line will not show up.  Also, if that limit is removed I'd prefer to
> > just add --pretty=raw to rev-list because git-log is stil porcelain and
> > more likely to change.
> 
> How about this?  It passes the test suite, but other than that
> hasn't seen much test yet.  I tried to be careful, but sanity
> checking by extra sets of eyeballs would be needed.

The patch looks and runs alright to me, but then again I haven't looked at the C portions of git in a while :x

I expected the malloc/free overhead to be much greater, but it's hardly noticeable (nor measureable with /usr/bin/time or bash built-in time). There are just a handful more pagefaults measured with /usr/bin/time, but the runtime performance is neck-and-neck with/without the patch.

Maybe glibc (2.3.6 on x86 Debian Etch) and Linux (2.6.18) are just doing a very good job with memory allocation... I wonder how well it runs on other platforms.

-- 
Eric Wong
Previous: Junio C Hamano
Message 5 of 5 in “git-svn: use git-log rather than rev-list | xargs cat-file”
  1. git-svn: use git-log rather than rev-list | xargs cat-fileSam Vilain, Jun 10, 2007
  2. Eric WongJun 10, 2007
  3. Junio C HamanoJun 11, 2007
  4. Extend --pretty=oneline to cover the first paragraph, so that an ugly commit message like this can be handled sanely.Junio C Hamano, Jun 12, 2007
  5. Eric WongJun 12, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.