Documentation / git-tar-tree.txton commit Merge branch 'jc/pack' (4405fb7)
   1git-tar-tree(1)
   2===============
   3
   4NAME
   5----
   6git-tar-tree - Creates a tar archive of the files in the named tree
   7
   8
   9SYNOPSIS
  10--------
  11'git-tar-tree' [--remote=<repo>] <tree-ish> [ <base> ]
  12
  13DESCRIPTION
  14-----------
  15Creates a tar archive containing the tree structure for the named tree.
  16When <base> is specified it is added as a leading path to the files in the
  17generated tar archive.
  18
  19git-tar-tree behaves differently when given a tree ID versus when given
  20a commit ID or tag ID.  In the first case the current time is used as
  21modification time of each file in the archive.  In the latter case the
  22commit time as recorded in the referenced commit object is used instead.
  23Additionally the commit ID is stored in a global extended pax header.
  24It can be extracted using git-get-tar-commit-id.
  25
  26OPTIONS
  27-------
  28
  29<tree-ish>::
  30        The tree or commit to produce tar archive for.  If it is
  31        the object name of a commit object.
  32
  33<base>::
  34        Leading path to the files in the resulting tar archive.
  35
  36--remote=<repo>::
  37        Instead of making a tar archive from local repository,
  38        retrieve a tar archive from a remote repository.
  39
  40CONFIGURATION
  41-------------
  42By default, file and directories modes are set to 0666 or 0777. It is
  43possible to change this by setting the "umask" variable in the
  44repository configuration as follows :
  45
  46[tar]
  47        umask = 002     ;# group friendly
  48
  49The special umask value "user" indicates that the user's current umask
  50will be used instead. The default value remains 0, which means world
  51readable/writable files and directories.
  52
  53EXAMPLES
  54--------
  55git tar-tree HEAD junk | (cd /var/tmp/ && tar xf -)::
  56
  57        Create a tar archive that contains the contents of the
  58        latest commit on the current branch, and extracts it in
  59        `/var/tmp/junk` directory.
  60
  61git tar-tree v1.4.0 git-1.4.0 | gzip >git-1.4.0.tar.gz::
  62
  63        Create a tarball for v1.4.0 release.
  64
  65git tar-tree v1.4.0{caret}\{tree\} git-1.4.0 | gzip >git-1.4.0.tar.gz::
  66
  67        Create a tarball for v1.4.0 release, but without a
  68        global extended pax header.
  69
  70git tar-tree --remote=example.com:git.git v1.4.0 >git-1.4.0.tar::
  71
  72        Get a tarball v1.4.0 from example.com.
  73
  74git tar-tree HEAD:Documentation/ git-docs > git-1.4.0-docs.tar::
  75
  76        Put everything in the current head's Documentation/ directory
  77        into 'git-1.4.0-docs.tar', with the prefix 'git-docs/'.
  78
  79Author
  80------
  81Written by Rene Scharfe.
  82
  83Documentation
  84--------------
  85Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>.
  86
  87GIT
  88---
  89Part of the gitlink:git[7] suite
  90