path: root/Documentation/git-archive.txt
diff options
authorDmitry Potapov <>2009-09-13 20:17:01 (GMT)
committerJunio C Hamano <>2009-09-13 20:54:39 (GMT)
commit0f4b377c20fb7d93f8bfeec39efb2b9392d6aebc (patch)
tree89504504d202bdb988edf90aa9c0a7b80e3aa07e /Documentation/git-archive.txt
parent518ef8f07f72271dff4040c1e7452ab6de73d199 (diff)
git-archive: infer output format from filename when unspecified
A command line $ git archive -o v2.0 almost certainly wants the output in zip format, even though it does not specify any --format option. When --format is not given, but output filename is, try to infer what format is requested from the filename extension. Currently this code only knows about '.zip'. When the format is unspecified and the filename does not tell us, the output will be in 'tar' format as before. Of course, an explicit --format will not trigger this guesswork. Signed-off-by: Dmitry Potapov <> Signed-off-by: Junio C Hamano <>
Diffstat (limited to 'Documentation/git-archive.txt')
1 files changed, 11 insertions, 2 deletions
diff --git a/Documentation/git-archive.txt b/Documentation/git-archive.txt
index 1917f2e..3d1c1e7 100644
--- a/Documentation/git-archive.txt
+++ b/Documentation/git-archive.txt
@@ -34,8 +34,11 @@ OPTIONS
- Format of the resulting archive: 'tar' or 'zip'. The default
- is 'tar'.
+ Format of the resulting archive: 'tar' or 'zip'. If this option
+ is not given, and the output file is specified, the format is
+ inferred from the filename if possible (e.g. writing to ""
+ makes the output to be in the zip format). Otherwise the output
+ format is `tar`.
@@ -130,6 +133,12 @@ git archive --format=zip --prefix=git-docs/ HEAD:Documentation/ > git-1.4.0-docs
Put everything in the current head's Documentation/ directory
into '', with the prefix 'git-docs/'.
+git archive -o HEAD::
+ Create a Zip archive that contains the contents of the latest
+ commit on the current branch. Note that the output format is
+ inferred by the extension of the output file.