]>
Commit | Line | Data |
---|---|---|
4df096a5 FBH |
1 | git-archive(1) |
2 | ============== | |
3 | ||
4 | NAME | |
5 | ---- | |
c3f0baac | 6 | git-archive - Creates an archive of files from a named tree |
4df096a5 FBH |
7 | |
8 | ||
9 | SYNOPSIS | |
10 | -------- | |
11 | 'git-archive' --format=<fmt> [--list] [--prefix=<prefix>/] [<extra>] | |
12 | [--remote=<repo>] <tree-ish> [path...] | |
13 | ||
14 | DESCRIPTION | |
15 | ----------- | |
16 | Creates an archive of the specified format containing the tree | |
17 | structure for the named tree. If <prefix> is specified it is | |
18 | prepended to the filenames in the archive. | |
19 | ||
20 | 'git-archive' behaves differently when given a tree ID versus when | |
21 | given a commit ID or tag ID. In the first case the current time is | |
22 | used as modification time of each file in the archive. In the latter | |
23 | case the commit time as recorded in the referenced commit object is | |
24 | used instead. Additionally the commit ID is stored in a global | |
25 | extended pax header if the tar format is used; it can be extracted | |
26 | using 'git-get-tar-commit-id'. In ZIP files it is stored as a file | |
27 | comment. | |
28 | ||
29 | OPTIONS | |
30 | ------- | |
31 | ||
32 | --format=<fmt>:: | |
33 | Format of the resulting archive: 'tar', 'zip'... | |
34 | ||
27c8f8cd | 35 | --list, -l:: |
4df096a5 FBH |
36 | Show all available formats. |
37 | ||
27c8f8cd AR |
38 | --verbose, -v:: |
39 | Report progress to stderr. | |
40 | ||
4df096a5 FBH |
41 | --prefix=<prefix>/:: |
42 | Prepend <prefix>/ to each filename in the archive. | |
43 | ||
44 | <extra>:: | |
45 | This can be any options that the archiver backend understand. | |
e8daf78a | 46 | See next section. |
4df096a5 FBH |
47 | |
48 | --remote=<repo>:: | |
49 | Instead of making a tar archive from local repository, | |
50 | retrieve a tar archive from a remote repository. | |
51 | ||
52 | <tree-ish>:: | |
53 | The tree or commit to produce an archive for. | |
54 | ||
55 | path:: | |
56 | If one or more paths are specified, include only these in the | |
57 | archive, otherwise include all files and subdirectories. | |
58 | ||
e8daf78a FBH |
59 | BACKEND EXTRA OPTIONS |
60 | --------------------- | |
61 | ||
62 | zip | |
63 | ~~~ | |
64 | -0:: | |
65 | Store the files instead of deflating them. | |
66 | -9:: | |
67 | Highest and slowest compression level. You can specify any | |
68 | number from 1 to 9 to adjust compression speed and ratio. | |
69 | ||
70 | ||
4df096a5 FBH |
71 | CONFIGURATION |
72 | ------------- | |
73 | By default, file and directories modes are set to 0666 or 0777 in tar | |
74 | archives. It is possible to change this by setting the "umask" variable | |
75 | in the repository configuration as follows : | |
76 | ||
77 | [tar] | |
78 | umask = 002 ;# group friendly | |
79 | ||
80 | The special umask value "user" indicates that the user's current umask | |
81 | will be used instead. The default value remains 0, which means world | |
82 | readable/writable files and directories. | |
83 | ||
84 | EXAMPLES | |
85 | -------- | |
86 | git archive --format=tar --prefix=junk/ HEAD | (cd /var/tmp/ && tar xf -):: | |
87 | ||
88 | Create a tar archive that contains the contents of the | |
89 | latest commit on the current branch, and extracts it in | |
90 | `/var/tmp/junk` directory. | |
91 | ||
92 | git archive --format=tar --prefix=git-1.4.0/ v1.4.0 | gzip >git-1.4.0.tar.gz:: | |
93 | ||
94 | Create a compressed tarball for v1.4.0 release. | |
95 | ||
96 | git archive --format=tar --prefix=git-1.4.0/ v1.4.0{caret}\{tree\} | gzip >git-1.4.0.tar.gz:: | |
97 | ||
98 | Create a compressed tarball for v1.4.0 release, but without a | |
99 | global extended pax header. | |
100 | ||
101 | git archive --format=zip --prefix=git-docs/ HEAD:Documentation/ > git-1.4.0-docs.zip:: | |
102 | ||
103 | Put everything in the current head's Documentation/ directory | |
104 | into 'git-1.4.0-docs.zip', with the prefix 'git-docs/'. | |
105 | ||
106 | Author | |
107 | ------ | |
108 | Written by Franck Bui-Huu and Rene Scharfe. | |
109 | ||
110 | Documentation | |
111 | -------------- | |
112 | Documentation by David Greaves, Junio C Hamano and the git-list <git@vger.kernel.org>. | |
113 | ||
114 | GIT | |
115 | --- | |
116 | Part of the gitlink:git[7] suite |