From 0f4b377c20fb7d93f8bfeec39efb2b9392d6aebc Mon Sep 17 00:00:00 2001 From: Dmitry Potapov Date: Mon, 14 Sep 2009 00:17:01 +0400 Subject: git-archive: infer output format from filename when unspecified A command line $ git archive -o my-v2.0.zip 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 --- Documentation/git-archive.txt | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'Documentation') diff --git a/Documentation/git-archive.txt b/Documentation/git-archive.txt index 1917f2e8a8..3d1c1e75b7 100644 --- a/Documentation/git-archive.txt +++ b/Documentation/git-archive.txt @@ -34,8 +34,11 @@ OPTIONS ------- --format=:: - 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 "foo.zip" + makes the output to be in the zip format). Otherwise the output + format is `tar`. -l:: --list:: @@ -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 'git-1.4.0-docs.zip', with the prefix 'git-docs/'. +git archive -o latest.zip 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. + SEE ALSO -------- -- cgit v1.2.1