From: Jakub Narebski <jnareb@gmail.com>
To: "Thanassis Tsiodras" <ttsiodras@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: Are binary xdeltas only used if you use git-gc?
Date: Fri, 31 Oct 2008 17:26:56 +0100 [thread overview]
Message-ID: <200810311726.57122.jnareb@gmail.com> (raw)
In-Reply-To: <f1d2d9ca0810310428o166dc075wbb43c00c1a555350@mail.gmail.com>
Thanassis Tsiodras wrote:
> On Fri, Oct 31, 2008 at 1:15 PM, Jakub Narebski <jnareb@gmail.com> wrote:
> > Git does deltification _only_ in packfiles. But when you push via SSH
> > git would generate a pack file with commits the other side doesn't
> > have, and those packs are thin packs, so they also have deltas... but
> > the remote side then adds bases to those thin packs making them
> > standalone: you would have to git-gc on remote.
>
> So I have to git-gc on my side (after the commits), git-gc on the remote,
> and then git-push?
Perhaps I haven't made myself clear.
On the local side: git-commit creates loose (compressed, but not
deltified) objects. git-gc packs and deltifies.
On the remote side (for smart protocols, i.e. git and ssh): git
creates _thin_ pack, deltified; on the remote side git either makes
pack thick/self contained by adding base objects (object + deltas),
or explodes pack into loose object (object). You need git-gc on
remote server to fully deltify on remote side. But transfer is fully
deltified.
On the remote side (for dumb protocols, i.e. rsync and http): git
finds required packs and transfers them whole. So the situation is
like on local side, but git might transfer more than really needed
because it transfers packs in full.
HTH.
--
Jakub Narebski
Poland
next prev parent reply other threads:[~2008-10-31 16:28 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-10-31 9:43 Are binary xdeltas only used if you use git-gc? Thanassis Tsiodras
2008-10-31 11:02 ` Pierre Habouzit
2008-10-31 11:16 ` Thanassis Tsiodras
2008-10-31 19:47 ` Nicolas Pitre
2008-10-31 19:31 ` Nicolas Pitre
2008-10-31 11:15 ` Jakub Narebski
2008-10-31 11:28 ` Thanassis Tsiodras
2008-10-31 16:26 ` Jakub Narebski [this message]
2008-10-31 16:42 ` Matthieu Moy
2008-10-31 19:53 ` Nicolas Pitre
2008-11-01 11:54 ` Thanassis Tsiodras
2008-11-01 13:25 ` Nicolas Pitre
2008-11-03 20:35 ` Thanassis Tsiodras
2008-11-03 20:52 ` Pieter de Bie
2008-11-03 21:42 ` Nicolas Pitre
2008-11-03 22:53 ` Thanassis Tsiodras
2008-11-04 1:18 ` Nicolas Pitre
2008-11-04 1:36 ` Junio C Hamano
2008-11-04 1:57 ` Nicolas Pitre
2008-11-04 3:17 ` Junio C Hamano
2008-10-31 17:03 ` Jean-Luc Herren
2008-10-31 12:42 ` Matthieu Moy
2008-10-31 14:22 ` Thanassis Tsiodras
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200810311726.57122.jnareb@gmail.com \
--to=jnareb@gmail.com \
--cc=git@vger.kernel.org \
--cc=ttsiodras@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).