diff options
author | Shawn O. Pearce <spearce@spearce.org> | 2007-09-09 19:38:11 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2007-09-10 00:00:26 -0700 |
commit | a4503a15af661ee865ed10102df15a6d3b43e60a (patch) | |
tree | 6f502eb0cb6ff91c8201eec16aff0f664443d46e | |
parent | fix doc for --compression argument to pack-objects (diff) | |
download | tgif-a4503a15af661ee865ed10102df15a6d3b43e60a.tar.xz |
Make --no-thin the default in git-push to save server resources
1) pushes happen less often than fetches, so the bandwidth saving is
much less visible in that case overall.
2) thin packs have to be complemented with missing delta bases to be
valid, so many received thin packs will take more disk space.
3) the bother of repacking should be distributed amongst "clients"
i.e. fetchers and pushers as much as possible, and not the server
being fetched or pushed, to keep disk and CPU usage low on the
server.
This is why a fetch should get thin packs but a push should not.
Both Nico and I have been assuming that --no-thin was the default
behavior of git-push ever since Nico introduced --fix-thin into the
index-pack process, which allowed fetch and receive-pack to avoid
exploding packfiles received during transfer. This patch finally
makes it so.
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | builtin-push.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/builtin-push.c b/builtin-push.c index 2612f07f74..88c5024da7 100644 --- a/builtin-push.c +++ b/builtin-push.c @@ -9,7 +9,7 @@ static const char push_usage[] = "git-push [--all] [--tags] [--receive-pack=<git-receive-pack>] [--repo=all] [-f | --force] [-v] [<repository> <refspec>...]"; -static int all, force, thin = 1, verbose; +static int all, force, thin, verbose; static const char *receivepack; static const char **refspec; |