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

Re: Feature request: git-svn dcommit should send deltas upstream

From
FWFlorian Weimer <fw@deneb.enyo.de>
Date
Aug 29, 2008, 10:17 UTC
Message-ID
<87tzd4p1lt.fsf@mid.deneb.enyo.de>
In-Reply-To
<20080829082311.GA7128@yp-box.dyndns.org>
* Eric Wong:
Show 13 quoted lines
> Florian Weimer <fw@deneb.enyo.de> wrote:
>> Looking at my network traffic and the Perl code, it seems to me that
>> git-svn fails to create a diff (delta) before sending data to the
>> server.  As a result, a few changes in a multi-megabyte file lead to a
>> large upload (similar to the situation with CVS).  git-svn should be
>> able to compute this diff in all cases because it has got an up-to-date
>> copy of the current revision in the Subversion repository.
>> 
>> As far as I can tell, this can't be fixed with a one-liner; some handles
>> need to be passed down to the code that actually handles the upload.
>
> Odd.  Can you verify that svn(1) does not send full files in this case,
> too?
These two are pcap files of single-line edits to the same file:

-rw-r--r-- 1 root root 1.3M 2008-08-29 11:54 /tmp/git -rw-r--r-- 1 root root 40K 2008-08-29 11:53 /tmp/svn

> It's been too long since I've looked at the SVN TxDelta API, but I
> thought SVN::TxDelta::apply would take care of the delta computation for
> us...
SVN::Git::Editor::M does not seem to make use of the base text.
Previous: Eric WongNext: Florian Weimer
Message 3 of 8 in “Feature request: git-svn dcommit should send deltas upstream”
  1. Florian WeimerAug 26, 2008
  2. Eric WongAug 29, 2008
  3. Florian WeimerAug 29, 2008
  4. Florian WeimerAug 31, 2008
  5. Junio C HamanoAug 31, 2008
  6. Florian WeimerAug 31, 2008
  7. Eric WongSep 1, 2008
  8. Florian WeimerSep 1, 2008

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.