Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 1 | git-archive(1) |
| 2 | ============== |
| 3 | |
| 4 | NAME |
| 5 | ---- |
william pursell | 29cf5e1 | 2007-06-09 16:44:12 +0100 | [diff] [blame] | 6 | git-archive - Create an archive of files from a named tree |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 7 | |
| 8 | |
| 9 | SYNOPSIS |
| 10 | -------- |
Matthias Kestenholz | e448ff8 | 2007-05-18 15:39:33 +0200 | [diff] [blame] | 11 | [verse] |
Jonathan Nieder | b1889c3 | 2008-06-30 01:09:04 -0500 | [diff] [blame] | 12 | 'git archive' --format=<fmt> [--list] [--prefix=<prefix>/] [<extra>] |
Michele Ballabio | c005c6a | 2007-10-05 00:41:11 +0200 | [diff] [blame] | 13 | [--remote=<repo> [--exec=<git-upload-archive>]] <tree-ish> |
| 14 | [path...] |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 15 | |
| 16 | DESCRIPTION |
| 17 | ----------- |
| 18 | Creates an archive of the specified format containing the tree |
Jari Aalto | 42b5f86 | 2007-09-14 21:38:02 +0300 | [diff] [blame] | 19 | structure for the named tree, and writes it out to the standard |
| 20 | output. If <prefix> is specified it is |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 21 | prepended to the filenames in the archive. |
| 22 | |
Jonathan Nieder | ba020ef | 2008-07-03 00:41:41 -0500 | [diff] [blame] | 23 | 'git-archive' behaves differently when given a tree ID versus when |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 24 | given a commit ID or tag ID. In the first case the current time is |
| 25 | used as modification time of each file in the archive. In the latter |
| 26 | case the commit time as recorded in the referenced commit object is |
| 27 | used instead. Additionally the commit ID is stored in a global |
| 28 | extended pax header if the tar format is used; it can be extracted |
Jonathan Nieder | ba020ef | 2008-07-03 00:41:41 -0500 | [diff] [blame] | 29 | using 'git-get-tar-commit-id'. In ZIP files it is stored as a file |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 30 | comment. |
| 31 | |
| 32 | OPTIONS |
| 33 | ------- |
| 34 | |
| 35 | --format=<fmt>:: |
Jari Aalto | 42b5f86 | 2007-09-14 21:38:02 +0300 | [diff] [blame] | 36 | Format of the resulting archive: 'tar' or 'zip'. The default |
René Scharfe | 8ff21b1 | 2007-04-09 17:12:53 +0200 | [diff] [blame] | 37 | is 'tar'. |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 38 | |
Stephan Beyer | 3240240 | 2008-06-08 03:36:09 +0200 | [diff] [blame] | 39 | -l:: |
| 40 | --list:: |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 41 | Show all available formats. |
| 42 | |
Stephan Beyer | 3240240 | 2008-06-08 03:36:09 +0200 | [diff] [blame] | 43 | -v:: |
| 44 | --verbose:: |
Andrew Ruder | 27c8f8c | 2007-04-18 22:03:14 -0500 | [diff] [blame] | 45 | Report progress to stderr. |
| 46 | |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 47 | --prefix=<prefix>/:: |
| 48 | Prepend <prefix>/ to each filename in the archive. |
| 49 | |
| 50 | <extra>:: |
| 51 | This can be any options that the archiver backend understand. |
Franck Bui-Huu | e8daf78 | 2006-09-25 12:31:52 +0200 | [diff] [blame] | 52 | See next section. |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 53 | |
| 54 | --remote=<repo>:: |
| 55 | Instead of making a tar archive from local repository, |
| 56 | retrieve a tar archive from a remote repository. |
| 57 | |
Michele Ballabio | c005c6a | 2007-10-05 00:41:11 +0200 | [diff] [blame] | 58 | --exec=<git-upload-archive>:: |
| 59 | Used with --remote to specify the path to the |
Jonathan Nieder | ba020ef | 2008-07-03 00:41:41 -0500 | [diff] [blame] | 60 | 'git-upload-archive' on the remote side. |
Michele Ballabio | c005c6a | 2007-10-05 00:41:11 +0200 | [diff] [blame] | 61 | |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 62 | <tree-ish>:: |
| 63 | The tree or commit to produce an archive for. |
| 64 | |
| 65 | path:: |
| 66 | If one or more paths are specified, include only these in the |
| 67 | archive, otherwise include all files and subdirectories. |
| 68 | |
Franck Bui-Huu | e8daf78 | 2006-09-25 12:31:52 +0200 | [diff] [blame] | 69 | BACKEND EXTRA OPTIONS |
| 70 | --------------------- |
| 71 | |
| 72 | zip |
| 73 | ~~~ |
| 74 | -0:: |
| 75 | Store the files instead of deflating them. |
| 76 | -9:: |
| 77 | Highest and slowest compression level. You can specify any |
| 78 | number from 1 to 9 to adjust compression speed and ratio. |
| 79 | |
| 80 | |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 81 | CONFIGURATION |
| 82 | ------------- |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 83 | |
René Scharfe | 687157c | 2007-08-21 20:01:16 +0200 | [diff] [blame] | 84 | tar.umask:: |
| 85 | This variable can be used to restrict the permission bits of |
| 86 | tar archive entries. The default is 0002, which turns off the |
| 87 | world write bit. The special value "user" indicates that the |
| 88 | archiving user's umask will be used instead. See umask(2) for |
| 89 | details. |
Franck Bui-Huu | 4df096a | 2006-09-07 15:12:02 +0200 | [diff] [blame] | 90 | |
| 91 | EXAMPLES |
| 92 | -------- |
| 93 | git archive --format=tar --prefix=junk/ HEAD | (cd /var/tmp/ && tar xf -):: |
| 94 | |
| 95 | Create a tar archive that contains the contents of the |
| 96 | latest commit on the current branch, and extracts it in |
| 97 | `/var/tmp/junk` directory. |
| 98 | |
| 99 | git archive --format=tar --prefix=git-1.4.0/ v1.4.0 | gzip >git-1.4.0.tar.gz:: |
| 100 | |
| 101 | Create a compressed tarball for v1.4.0 release. |
| 102 | |
| 103 | git archive --format=tar --prefix=git-1.4.0/ v1.4.0{caret}\{tree\} | gzip >git-1.4.0.tar.gz:: |
| 104 | |
| 105 | Create a compressed tarball for v1.4.0 release, but without a |
| 106 | global extended pax header. |
| 107 | |
| 108 | git archive --format=zip --prefix=git-docs/ HEAD:Documentation/ > git-1.4.0-docs.zip:: |
| 109 | |
| 110 | Put everything in the current head's Documentation/ directory |
| 111 | into 'git-1.4.0-docs.zip', with the prefix 'git-docs/'. |
| 112 | |
| 113 | Author |
| 114 | ------ |
| 115 | Written by Franck Bui-Huu and Rene Scharfe. |
| 116 | |
| 117 | Documentation |
| 118 | -------------- |
| 119 | Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>. |
| 120 | |
| 121 | GIT |
| 122 | --- |
Christian Couder | 9e1f0a8 | 2008-06-06 09:07:32 +0200 | [diff] [blame] | 123 | Part of the linkgit:git[1] suite |