Code

Merge branch 'dh/pack'
authorJunio C Hamano <junkio@cox.net>
Sun, 20 May 2007 09:19:19 +0000 (02:19 -0700)
committerJunio C Hamano <junkio@cox.net>
Sun, 20 May 2007 09:19:19 +0000 (02:19 -0700)
* dh/pack:
  Custom compression levels for objects and packs

1  2 
Documentation/config.txt
builtin-pack-objects.c
cache.h
config.c
environment.c

index b8d48d1013c46fd46d0da13f80552971a5f58644,382a31bb4f87d416dd0a176d41145f1a32746cf6..ee1c35e8eb952967980884d521d12a76622f38f4
@@@ -204,11 -204,30 +204,17 @@@ core.warnAmbiguousRefs:
        and might match multiple refs in the .git/refs/ tree. True by default.
  
  core.compression::
+       An integer -1..9, indicating a default compression level.
+       -1 is the zlib default. 0 means no compression,
+       and 1..9 are various speed/size tradeoffs, 9 being slowest.
+ core.loosecompression::
        An integer -1..9, indicating the compression level for objects that
-       are not in a pack file. -1 is the zlib and git default. 0 means no
+       are not in a pack file. -1 is the zlib default. 0 means no
        compression, and 1..9 are various speed/size tradeoffs, 9 being
-       slowest.
+       slowest.  If not set,  defaults to core.compression.  If that is
+       not set,  defaults to 0 (best speed).
  
 -core.legacyheaders::
 -      A boolean which
 -      changes the format of loose objects so that they are more
 -      efficient to pack and to send out of the repository over git
 -      native protocol, since v1.4.2.  However, loose objects
 -      written in the new format cannot be read by git older than
 -      that version; people fetching from your repository using
 -      older versions of git over dumb transports (e.g. http)
 -      will also be affected.
 -+
 -To let git use the new loose object format, you have to
 -set core.legacyheaders to false.
 -
  core.packedGitWindowSize::
        Number of bytes of a pack file to map into memory in a
        single mapping operation.  Larger window sizes may allow
Simple merge
diff --cc cache.h
Simple merge
diff --cc config.c
index 521ebef3819bff1705d652684780434d6ab3fca7,5627ed6a7946ffd9c8dac419d32c9e77dc000587..0614c2b29fa93b66065ec6bc20712d38193aec89
+++ b/config.c
@@@ -299,7 -301,12 +301,7 @@@ int git_default_config(const char *var
                return 0;
        }
  
-       if (!strcmp(var, "core.compression")) {
 -      if (!strcmp(var, "core.legacyheaders")) {
 -              use_legacy_headers = git_config_bool(var, value);
 -              return 0;
 -      }
 -
+       if (!strcmp(var, "core.loosecompression")) {
                int level = git_config_int(var, value);
                if (level == -1)
                        level = Z_DEFAULT_COMPRESSION;
diff --cc environment.c
Simple merge