]>
Commit | Line | Data |
---|---|---|
9c4a036b BG |
1 | --all:: |
2 | Fetch all remotes. | |
3 | ||
3240240f SB |
4 | -a:: |
5 | --append:: | |
93d69d86 JL |
6 | Append ref names and object names of fetched refs to the |
7 | existing contents of `.git/FETCH_HEAD`. Without this | |
8 | option old data in `.git/FETCH_HEAD` will be overwritten. | |
9 | ||
6b276e19 | 10 | --depth=<depth>:: |
60253a60 SS |
11 | Limit fetching to the specified number of commits from the tip of |
12 | each remote branch history. If fetching to a 'shallow' repository | |
13 | created by `git clone` with `--depth=<depth>` option (see | |
14 | linkgit:git-clone[1]), deepen or shorten the history to the specified | |
15 | number of commits. Tags for the deepened commits are not fetched. | |
2c620a1a | 16 | |
cccf74e2 NTND |
17 | --deepen=<depth>:: |
18 | Similar to --depth, except it specifies the number of commits | |
19 | from the current shallow boundary instead of from the tip of | |
20 | each remote branch history. | |
21 | ||
508ea882 NTND |
22 | --shallow-since=<date>:: |
23 | Deepen or shorten the history of a shallow repository to | |
24 | include all reachable commits after <date>. | |
25 | ||
a45a2600 NTND |
26 | --shallow-exclude=<revision>:: |
27 | Deepen or shorten the history of a shallow repository to | |
28 | exclude commits reachable from a specified remote branch or tag. | |
29 | This option can be specified multiple times. | |
30 | ||
4dcb167f | 31 | --unshallow:: |
79d3a236 NTND |
32 | If the source repository is complete, convert a shallow |
33 | repository to a complete one, removing all the limitations | |
34 | imposed by shallow repositories. | |
35 | + | |
36 | If the source repository is shallow, fetch as much as possible so that | |
37 | the current repository has the same history as the source repository. | |
4dcb167f | 38 | |
48d25cae NTND |
39 | --update-shallow:: |
40 | By default when fetching from a shallow repository, | |
41 | `git fetch` refuses refs that require updating | |
42 | .git/shallow. This option updates .git/shallow and accept such | |
43 | refs. | |
4dcb167f | 44 | |
3390e42a JT |
45 | --negotiation-tip=<commit|glob>:: |
46 | By default, Git will report, to the server, commits reachable | |
47 | from all local refs to find common commits in an attempt to | |
48 | reduce the size of the to-be-received packfile. If specified, | |
49 | Git will only report commits reachable from the given tips. | |
50 | This is useful to speed up fetches when the user knows which | |
51 | local ref is likely to have commits in common with the | |
52 | upstream ref being fetched. | |
53 | + | |
54 | This option may be specified more than once; if so, Git will report | |
55 | commits reachable from any of the given commits. | |
56 | + | |
57 | The argument to this option may be a glob on ref names, a ref, or the (possibly | |
58 | abbreviated) SHA-1 of a commit. Specifying a glob is equivalent to specifying | |
59 | this option multiple times, one for each matching ref name. | |
52660828 ÆAB |
60 | + |
61 | See also the `fetch.negotiationAlgorithm` configuration variable | |
62 | documented in linkgit:git-config[1]. | |
3390e42a | 63 | |
28a15401 JS |
64 | ifndef::git-pull[] |
65 | --dry-run:: | |
66 | Show what would be done, without making any changes. | |
67 | endif::git-pull[] | |
68 | ||
3240240f SB |
69 | -f:: |
70 | --force:: | |
ae6a4703 ÆAB |
71 | When 'git fetch' is used with `<src>:<dst>` refspec it may |
72 | refuse to update the local branch as discussed | |
73 | ifdef::git-pull[] | |
74 | in the `<refspec>` part of the linkgit:git-fetch[1] | |
75 | documentation. | |
76 | endif::git-pull[] | |
77 | ifndef::git-pull[] | |
78 | in the `<refspec>` part below. | |
79 | endif::git-pull[] | |
80 | This option overrides that check. | |
93d69d86 | 81 | |
6b276e19 JA |
82 | -k:: |
83 | --keep:: | |
84 | Keep downloaded pack. | |
85 | ||
16679e37 BG |
86 | ifndef::git-pull[] |
87 | --multiple:: | |
88 | Allow several <repository> and <group> arguments to be | |
89 | specified. No <refspec>s may be specified. | |
f360d844 | 90 | |
1b79d1c2 | 91 | -p:: |
f360d844 | 92 | --prune:: |
9e70233a | 93 | Before fetching, remove any remote-tracking references that no |
0838bf47 MH |
94 | longer exist on the remote. Tags are not subject to pruning |
95 | if they are fetched only because of the default tag | |
96 | auto-following or due to a --tags option. However, if tags | |
97 | are fetched due to an explicit refspec (either on the command | |
98 | line or in the remote configuration, for example if the remote | |
99 | was cloned with the --mirror option), then they are also | |
97716d21 ÆAB |
100 | subject to pruning. Supplying `--prune-tags` is a shorthand for |
101 | providing the tag refspec. | |
102 | + | |
103 | See the PRUNING section below for more details. | |
104 | ||
105 | -P:: | |
106 | --prune-tags:: | |
107 | Before fetching, remove any local tags that no longer exist on | |
108 | the remote if `--prune` is enabled. This option should be used | |
109 | more carefully, unlike `--prune` it will remove any local | |
110 | references (local tags) that have been created. This option is | |
111 | a shorthand for providing the explicit tag refspec along with | |
112 | `--prune`, see the discussion about that in its documentation. | |
627a129b ÆAB |
113 | + |
114 | See the PRUNING section below for more details. | |
115 | ||
16679e37 BG |
116 | endif::git-pull[] |
117 | ||
10eb64f5 | 118 | ifndef::git-pull[] |
3240240f | 119 | -n:: |
10eb64f5 | 120 | endif::git-pull[] |
01ca90c2 | 121 | --no-tags:: |
10eb64f5 MV |
122 | By default, tags that point at objects that are downloaded |
123 | from the remote repository are fetched and stored locally. | |
ed368546 | 124 | This option disables this automatic tag following. The default |
da0005b8 | 125 | behavior for a remote may be specified with the remote.<name>.tagOpt |
ed368546 | 126 | setting. See linkgit:git-config[1]. |
03febf99 | 127 | |
2e5955f3 | 128 | ifndef::git-pull[] |
c5558f80 JH |
129 | --refmap=<refspec>:: |
130 | When fetching refs listed on the command line, use the | |
131 | specified refspec (can be given more than once) to map the | |
132 | refs to remote-tracking branches, instead of the values of | |
133 | `remote.*.fetch` configuration variables for the remote | |
134 | repository. See section on "Configured Remote-tracking | |
135 | Branches" for details. | |
136 | ||
3240240f SB |
137 | -t:: |
138 | --tags:: | |
0838bf47 MH |
139 | Fetch all tags from the remote (i.e., fetch remote tags |
140 | `refs/tags/*` into local tags with the same name), in addition | |
141 | to whatever else would otherwise be fetched. Using this | |
142 | option alone does not subject tags to pruning, even if --prune | |
143 | is used (though tags may be pruned anyway if they are also the | |
bcf9626a | 144 | destination of an explicit refspec; see `--prune`). |
93d69d86 | 145 | |
8f0700dd JL |
146 | --recurse-submodules[=yes|on-demand|no]:: |
147 | This option controls if and under what conditions new commits of | |
148 | populated submodules should be fetched too. It can be used as a | |
149 | boolean option to completely disable recursion when set to 'no' or to | |
150 | unconditionally recurse into all populated submodules when set to | |
151 | 'yes', which is the default when this option is used without any | |
152 | value. Use 'on-demand' to only recurse into a populated submodule | |
153 | when the superproject retrieves a commit that updates the submodule's | |
c16c3e40 JL |
154 | reference to a commit that isn't already in the local submodule |
155 | clone. | |
8f0700dd | 156 | |
62104ba1 SB |
157 | -j:: |
158 | --jobs=<n>:: | |
159 | Number of parallel children to be used for fetching submodules. | |
160 | Each will fetch from different submodules, such that fetching many | |
161 | submodules will be faster. By default submodules will be fetched | |
162 | one at a time. | |
163 | ||
8f0700dd JL |
164 | --no-recurse-submodules:: |
165 | Disable recursive fetching of submodules (this has the same effect as | |
bcf9626a | 166 | using the `--recurse-submodules=no` option). |
7dce19d3 | 167 | |
7dce19d3 JL |
168 | --submodule-prefix=<path>:: |
169 | Prepend <path> to paths printed in informative messages | |
170 | such as "Fetching submodule foo". This option is used | |
171 | internally when recursing over submodules. | |
88a21979 JL |
172 | |
173 | --recurse-submodules-default=[yes|on-demand]:: | |
174 | This option is used internally to temporarily provide a | |
175 | non-negative default value for the --recurse-submodules | |
176 | option. All other methods of configuring fetch's submodule | |
177 | recursion (such as settings in linkgit:gitmodules[5] and | |
178 | linkgit:git-config[1]) override this option, as does | |
179 | specifying --[no-]recurse-submodules directly. | |
7dce19d3 | 180 | endif::git-pull[] |
93d69d86 | 181 | |
3240240f SB |
182 | -u:: |
183 | --update-head-ok:: | |
0b444cdb | 184 | By default 'git fetch' refuses to update the head which |
93d69d86 | 185 | corresponds to the current branch. This flag disables the |
0b444cdb TR |
186 | check. This is purely for the internal use for 'git pull' |
187 | to communicate with 'git fetch', and unless you are | |
a597fb0e JH |
188 | implementing your own Porcelain you are not supposed to |
189 | use it. | |
03febf99 | 190 | |
6b276e19 JA |
191 | --upload-pack <upload-pack>:: |
192 | When given, and the repository to fetch from is handled | |
bcf9626a | 193 | by 'git fetch-pack', `--exec=<upload-pack>` is passed to |
6b276e19 JA |
194 | the command to specify non-default path for the command |
195 | run on the other end. | |
196 | ||
197 | ifndef::git-pull[] | |
198 | -q:: | |
199 | --quiet:: | |
200 | Pass --quiet to git-fetch-pack and silence any other internally | |
9839018e TRC |
201 | used git commands. Progress is not reported to the standard error |
202 | stream. | |
6b276e19 JA |
203 | |
204 | -v:: | |
205 | --verbose:: | |
206 | Be verbose. | |
207 | endif::git-pull[] | |
9839018e TRC |
208 | |
209 | --progress:: | |
210 | Progress status is reported on the standard error stream | |
211 | by default when it is attached to a terminal, unless -q | |
212 | is specified. This flag forces progress status even if the | |
213 | standard error stream is not directed to a terminal. | |
c915f11e | 214 | |
5e3548ef BW |
215 | -o <option>:: |
216 | --server-option=<option>:: | |
217 | Transmit the given string to the server when communicating using | |
218 | protocol version 2. The given string must not contain a NUL or LF | |
6e983059 JT |
219 | character. The server's handling of server options, including |
220 | unknown ones, is server-specific. | |
5e3548ef BW |
221 | When multiple `--server-option=<option>` are given, they are all |
222 | sent to the other side in the order listed on the command line. | |
223 | ||
c915f11e EW |
224 | -4:: |
225 | --ipv4:: | |
226 | Use IPv4 addresses only, ignoring IPv6 addresses. | |
227 | ||
228 | -6:: | |
229 | --ipv6:: | |
230 | Use IPv6 addresses only, ignoring IPv4 addresses. |