123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- git-upload-archive(1)
- =====================
- NAME
- ----
- git-upload-archive - Send archive back to git-archive
- SYNOPSIS
- --------
- [verse]
- 'git upload-archive' <directory>
- DESCRIPTION
- -----------
- Invoked by 'git archive --remote' and sends a generated archive to the
- other end over the Git protocol.
- This command is usually not invoked directly by the end user. The UI
- for the protocol is on the 'git archive' side, and the program pair
- is meant to be used to get an archive from a remote repository.
- SECURITY
- --------
- In order to protect the privacy of objects that have been removed from
- history but may not yet have been pruned, `git-upload-archive` avoids
- serving archives for commits and trees that are not reachable from the
- repository's refs. However, because calculating object reachability is
- computationally expensive, `git-upload-archive` implements a stricter
- but easier-to-check set of rules:
- 1. Clients may request a commit or tree that is pointed to directly by
- a ref. E.g., `git archive --remote=origin v1.0`.
- 2. Clients may request a sub-tree within a commit or tree using the
- `ref:path` syntax. E.g., `git archive --remote=origin v1.0:Documentation`.
- 3. Clients may _not_ use other sha1 expressions, even if the end
- result is reachable. E.g., neither a relative commit like `master^`
- nor a literal sha1 like `abcd1234` is allowed, even if the result
- is reachable from the refs.
- Note that rule 3 disallows many cases that do not have any privacy
- implications. These rules are subject to change in future versions of
- git, and the server accessed by `git archive --remote` may or may not
- follow these exact rules.
- If the config option `uploadArchive.allowUnreachable` is true, these
- rules are ignored, and clients may use arbitrary sha1 expressions.
- This is useful if you do not care about the privacy of unreachable
- objects, or if your object database is already publicly available for
- access via non-smart-http.
- OPTIONS
- -------
- <directory>::
- The repository to get a tar archive from.
- GIT
- ---
- Part of the linkgit:git[1] suite
|