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

Re: What's in git.git

From
Junio C Hamano <junkio@cox.net>
Date
Feb 20, 2006, 09:04 UTC
Message-ID
<7vwtfqcsef.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<43F97F0D.9080500@op5.se>
Andreas Ericsson <ae@op5.se> writes:
Show 15 quoted lines
> Junio C Hamano wrote:
>
>> There now is further performance improvements for git-send-pack
>> to avoid sending a huge blob or tree object in its full
>> representation when we know the other end has a suitable object
>> to use as the base; instead we can just send it out deltified.
>> The other end would expand it to a loose object and this would
>> not make abit of difference in the resulting repository -- only
>> the bandwidth requirement reduction is visible [*1*].
>
> How likely is this to increase the CPU-power needed on the
> server-side? If there is a blob on the server-side, but far from the
> deltified object I suppose we have to look at each commit, perhaps
> only to discover that the client doesn't have them and we need to
> construct the blob anyways.

Not much. It deliberately keeps the set of blobs and trees to consider for remote base to minimum -- just the trees contained in the boundary commits. That way we may miss the best base candidate that are further back in history, but it does not matter because even using the less optimum one as a base saves us from sending the base object at all.

Previous: Andreas EricssonNext: Junio C Hamano
Message 3 of 4 in “What's in git.git”
  1. Junio C HamanoFeb 20, 2006
  2. Andreas EricssonFeb 20, 2006
  3. Junio C HamanoFeb 20, 2006
  4. Junio C HamanoFeb 20, 2006

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.