Merge branch 'rs/dir-strbuf' into next
[git/dscho.git] / Documentation / git-fetch-pack.txt
blob474fa307a093ed126ab4f2216103a042d4bb0930
1 git-fetch-pack(1)
2 =================
4 NAME
5 ----
6 git-fetch-pack - Receive missing objects from another repository
9 SYNOPSIS
10 --------
11 [verse]
12 'git fetch-pack' [--all] [--quiet|-q] [--keep|-k] [--thin] [--include-tag] [--upload-pack=<git-upload-pack>] [--depth=<n>] [--no-progress] [-v] [<host>:]<directory> [<refs>...]
14 DESCRIPTION
15 -----------
16 Usually you would want to use 'git fetch', which is a
17 higher level wrapper of this command, instead.
19 Invokes 'git-upload-pack' on a possibly remote repository
20 and asks it to send objects missing from this repository, to
21 update the named heads.  The list of commits available locally
22 is found out by scanning the local refs/ hierarchy and sent to
23 'git-upload-pack' running on the other end.
25 This command degenerates to download everything to complete the
26 asked refs from the remote side when the local side does not
27 have a common ancestor commit.
30 OPTIONS
31 -------
32 --all::
33         Fetch all remote refs.
35 --stdin::
36         Take the list of refs from stdin, one per line. If there
37         are refs specified on the command line in addition to this
38         option, then the refs from stdin are processed after those
39         on the command line.
41 If '--stateless-rpc' is specified together with this option then
42 the list of refs must be in packet format (pkt-line). Each ref must
43 be in a separate packet, and the list must end with a flush packet.
45 -q::
46 --quiet::
47         Pass '-q' flag to 'git unpack-objects'; this makes the
48         cloning process less verbose.
50 -k::
51 --keep::
52         Do not invoke 'git unpack-objects' on received data, but
53         create a single packfile out of it instead, and store it
54         in the object database. If provided twice then the pack is
55         locked against repacking.
57 --thin::
58         Fetch a "thin" pack, which records objects in deltified form based
59         on objects not included in the pack to reduce network traffic.
61 --include-tag::
62         If the remote side supports it, annotated tags objects will
63         be downloaded on the same connection as the other objects if
64         the object the tag references is downloaded.  The caller must
65         otherwise determine the tags this option made available.
67 --upload-pack=<git-upload-pack>::
68         Use this to specify the path to 'git-upload-pack' on the
69         remote side, if is not found on your $PATH.
70         Installations of sshd ignores the user's environment
71         setup scripts for login shells (e.g. .bash_profile) and
72         your privately installed git may not be found on the system
73         default $PATH.  Another workaround suggested is to set
74         up your $PATH in ".bashrc", but this flag is for people
75         who do not want to pay the overhead for non-interactive
76         shells by having a lean .bashrc file (they set most of
77         the things up in .bash_profile).
79 --exec=<git-upload-pack>::
80         Same as \--upload-pack=<git-upload-pack>.
82 --depth=<n>::
83         Limit fetching to ancestor-chains not longer than n.
85 --no-progress::
86         Do not show the progress.
88 -v::
89         Run verbosely.
91 <host>::
92         A remote host that houses the repository.  When this
93         part is specified, 'git-upload-pack' is invoked via
94         ssh.
96 <directory>::
97         The repository to sync from.
99 <refs>...::
100         The remote heads to update from. This is relative to
101         $GIT_DIR (e.g. "HEAD", "refs/heads/master").  When
102         unspecified, update from all heads the remote side has.
106 Part of the linkgit:git[1] suite