Documentation / git-pack-objects.txton commit Merge branch 'eb/quilt' (667661d)
   1git-pack-objects(1)
   2===================
   3
   4NAME
   5----
   6git-pack-objects - Create a packed archive of objects
   7
   8
   9SYNOPSIS
  10--------
  11[verse]
  12'git-pack-objects' [-q] [--no-reuse-delta] [--non-empty]
  13        [--local] [--incremental] [--window=N] [--depth=N]
  14        {--stdout | base-name} < object-list
  15
  16
  17DESCRIPTION
  18-----------
  19Reads list of objects from the standard input, and writes a packed
  20archive with specified base-name, or to the standard output.
  21
  22A packed archive is an efficient way to transfer set of objects
  23between two repositories, and also is an archival format which
  24is efficient to access.  The packed archive format (.pack) is
  25designed to be unpackable without having anything else, but for
  26random access, accompanied with the pack index file (.idx).
  27
  28'git-unpack-objects' command can read the packed archive and
  29expand the objects contained in the pack into "one-file
  30one-object" format; this is typically done by the smart-pull
  31commands when a pack is created on-the-fly for efficient network
  32transport by their peers.
  33
  34Placing both in the pack/ subdirectory of $GIT_OBJECT_DIRECTORY (or
  35any of the directories on $GIT_ALTERNATE_OBJECT_DIRECTORIES)
  36enables git to read from such an archive.
  37
  38In a packed archive, an object is either stored as a compressed
  39whole, or as a difference from some other object.  The latter is
  40often called a delta.
  41
  42
  43OPTIONS
  44-------
  45base-name::
  46        Write into a pair of files (.pack and .idx), using
  47        <base-name> to determine the name of the created file.
  48        When this option is used, the two files are written in
  49        <base-name>-<SHA1>.{pack,idx} files.  <SHA1> is a hash
  50        of object names (currently in random order so it does
  51        not have any useful meaning) to make the resulting
  52        filename reasonably unique, and written to the standard
  53        output of the command.
  54
  55--stdout::
  56        Write the pack contents (what would have been written to
  57        .pack file) out to the standard output.
  58
  59--window and --depth::
  60        These two options affects how the objects contained in
  61        the pack are stored using delta compression.  The
  62        objects are first internally sorted by type, size and
  63        optionally names and compared against the other objects
  64        within --window to see if using delta compression saves
  65        space.  --depth limits the maximum delta depth; making
  66        it too deep affects the performance on the unpacker
  67        side, because delta data needs to be applied that many
  68        times to get to the necessary object.
  69
  70--incremental::
  71        This flag causes an object already in a pack ignored
  72        even if it appears in the standard input.
  73
  74--local::
  75        This flag is similar to `--incremental`; instead of
  76        ignoring all packed objects, it only ignores objects
  77        that are packed and not in the local object store
  78        (i.e. borrowed from an alternate).
  79
  80--non-empty::
  81        Only create a packed archive if it would contain at
  82        least one object.
  83
  84-q::
  85        This flag makes the command not to report its progress
  86        on the standard error stream.
  87
  88--no-reuse-delta::
  89        When creating a packed archive in a repository that
  90        has existing packs, the command reuses existing deltas.
  91        This sometimes results in a slightly suboptimal pack.
  92        This flag tells the command not to reuse existing deltas
  93        but compute them from scratch.
  94
  95
  96Author
  97------
  98Written by Linus Torvalds <torvalds@osdl.org>
  99
 100Documentation
 101-------------
 102Documentation by Junio C Hamano
 103
 104See Also
 105--------
 106gitlink:git-repack[1]
 107gitlink:git-prune-packed[1]
 108
 109GIT
 110---
 111Part of the gitlink:git[7] suite
 112