revision.c: explain what tree_difference does
[gitweb.git] / Documentation / git-tar-tree.txt
index 2139b6ff8ce3df6d1c872be1410349e2637eb4f1..595940524e7d7f1112700899cf74e24e1c2e1e87 100644 (file)
@@ -3,15 +3,18 @@ git-tar-tree(1)
 
 NAME
 ----
-git-tar-tree - Creates a tar archive of the files in the named tree
+git-tar-tree - Create a tar archive of the files in the named tree object
 
 
 SYNOPSIS
 --------
-'git-tar-tree' <tree-ish> [ <base> ]
+'git-tar-tree' [--remote=<repo>] <tree-ish> [ <base> ]
 
 DESCRIPTION
 -----------
+THIS COMMAND IS DEPRECATED.  Use `git-archive` with `--format=tar`
+option instead.
+
 Creates a tar archive containing the tree structure for the named tree.
 When <base> is specified it is added as a leading path to the files in the
 generated tar archive.
@@ -23,6 +26,58 @@ commit time as recorded in the referenced commit object is used instead.
 Additionally the commit ID is stored in a global extended pax header.
 It can be extracted using git-get-tar-commit-id.
 
+OPTIONS
+-------
+
+<tree-ish>::
+       The tree or commit to produce tar archive for.  If it is
+       the object name of a commit object.
+
+<base>::
+       Leading path to the files in the resulting tar archive.
+
+--remote=<repo>::
+       Instead of making a tar archive from local repository,
+       retrieve a tar archive from a remote repository.
+
+CONFIGURATION
+-------------
+By default, file and directories modes are set to 0666 or 0777. It is
+possible to change this by setting the "umask" variable in the
+repository configuration as follows :
+
+[tar]
+        umask = 002    ;# group friendly
+
+The special umask value "user" indicates that the user's current umask
+will be used instead.  The default value is 002, which means group
+readable/writable files and directories.
+
+EXAMPLES
+--------
+git tar-tree HEAD junk | (cd /var/tmp/ && tar xf -)::
+
+       Create a tar archive that contains the contents of the
+       latest commit on the current branch, and extracts it in
+       `/var/tmp/junk` directory.
+
+git tar-tree v1.4.0 git-1.4.0 | gzip >git-1.4.0.tar.gz::
+
+       Create a tarball for v1.4.0 release.
+
+git tar-tree v1.4.0{caret}\{tree\} git-1.4.0 | gzip >git-1.4.0.tar.gz::
+
+       Create a tarball for v1.4.0 release, but without a
+       global extended pax header.
+
+git tar-tree --remote=example.com:git.git v1.4.0 >git-1.4.0.tar::
+
+       Get a tarball v1.4.0 from example.com.
+
+git tar-tree HEAD:Documentation/ git-docs > git-1.4.0-docs.tar::
+
+       Put everything in the current head's Documentation/ directory
+       into 'git-1.4.0-docs.tar', with the prefix 'git-docs/'.
 
 Author
 ------