]>
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>:: |
cfb70e1f | 11 | Deepen or shorten the history of a 'shallow' repository created by |
6b276e19 | 12 | `git clone` with `--depth=<depth>` option (see linkgit:git-clone[1]) |
bc40deab PO |
13 | to the specified number of commits from the tip of each remote |
14 | branch history. Tags for the deepened commits are not fetched. | |
2c620a1a | 15 | |
4dcb167f | 16 | --unshallow:: |
79d3a236 NTND |
17 | If the source repository is complete, convert a shallow |
18 | repository to a complete one, removing all the limitations | |
19 | imposed by shallow repositories. | |
20 | + | |
21 | If the source repository is shallow, fetch as much as possible so that | |
22 | the current repository has the same history as the source repository. | |
4dcb167f | 23 | |
48d25cae NTND |
24 | --update-shallow:: |
25 | By default when fetching from a shallow repository, | |
26 | `git fetch` refuses refs that require updating | |
27 | .git/shallow. This option updates .git/shallow and accept such | |
28 | refs. | |
4dcb167f | 29 | |
28a15401 JS |
30 | ifndef::git-pull[] |
31 | --dry-run:: | |
32 | Show what would be done, without making any changes. | |
33 | endif::git-pull[] | |
34 | ||
3240240f SB |
35 | -f:: |
36 | --force:: | |
0b444cdb | 37 | When 'git fetch' is used with `<rbranch>:<lbranch>` |
a3e3dc46 JH |
38 | refspec, it refuses to update the local branch |
39 | `<lbranch>` unless the remote branch `<rbranch>` it | |
40 | fetches is a descendant of `<lbranch>`. This option | |
41 | overrides that check. | |
93d69d86 | 42 | |
6b276e19 JA |
43 | -k:: |
44 | --keep:: | |
45 | Keep downloaded pack. | |
46 | ||
16679e37 BG |
47 | ifndef::git-pull[] |
48 | --multiple:: | |
49 | Allow several <repository> and <group> arguments to be | |
50 | specified. No <refspec>s may be specified. | |
f360d844 | 51 | |
1b79d1c2 | 52 | -p:: |
f360d844 | 53 | --prune:: |
0838bf47 MH |
54 | After fetching, remove any remote-tracking references that no |
55 | longer exist on the remote. Tags are not subject to pruning | |
56 | if they are fetched only because of the default tag | |
57 | auto-following or due to a --tags option. However, if tags | |
58 | are fetched due to an explicit refspec (either on the command | |
59 | line or in the remote configuration, for example if the remote | |
60 | was cloned with the --mirror option), then they are also | |
61 | subject to pruning. | |
16679e37 BG |
62 | endif::git-pull[] |
63 | ||
10eb64f5 | 64 | ifndef::git-pull[] |
3240240f | 65 | -n:: |
10eb64f5 | 66 | endif::git-pull[] |
01ca90c2 | 67 | --no-tags:: |
10eb64f5 MV |
68 | By default, tags that point at objects that are downloaded |
69 | from the remote repository are fetched and stored locally. | |
ed368546 DJ |
70 | This option disables this automatic tag following. The default |
71 | behavior for a remote may be specified with the remote.<name>.tagopt | |
72 | setting. See linkgit:git-config[1]. | |
03febf99 | 73 | |
2e5955f3 | 74 | ifndef::git-pull[] |
c5558f80 JH |
75 | --refmap=<refspec>:: |
76 | When fetching refs listed on the command line, use the | |
77 | specified refspec (can be given more than once) to map the | |
78 | refs to remote-tracking branches, instead of the values of | |
79 | `remote.*.fetch` configuration variables for the remote | |
80 | repository. See section on "Configured Remote-tracking | |
81 | Branches" for details. | |
82 | ||
3240240f SB |
83 | -t:: |
84 | --tags:: | |
0838bf47 MH |
85 | Fetch all tags from the remote (i.e., fetch remote tags |
86 | `refs/tags/*` into local tags with the same name), in addition | |
87 | to whatever else would otherwise be fetched. Using this | |
88 | option alone does not subject tags to pruning, even if --prune | |
89 | is used (though tags may be pruned anyway if they are also the | |
90 | destination of an explicit refspec; see '--prune'). | |
93d69d86 | 91 | |
8f0700dd JL |
92 | --recurse-submodules[=yes|on-demand|no]:: |
93 | This option controls if and under what conditions new commits of | |
94 | populated submodules should be fetched too. It can be used as a | |
95 | boolean option to completely disable recursion when set to 'no' or to | |
96 | unconditionally recurse into all populated submodules when set to | |
97 | 'yes', which is the default when this option is used without any | |
98 | value. Use 'on-demand' to only recurse into a populated submodule | |
99 | when the superproject retrieves a commit that updates the submodule's | |
c16c3e40 JL |
100 | reference to a commit that isn't already in the local submodule |
101 | clone. | |
8f0700dd JL |
102 | |
103 | --no-recurse-submodules:: | |
104 | Disable recursive fetching of submodules (this has the same effect as | |
105 | using the '--recurse-submodules=no' option). | |
7dce19d3 | 106 | |
7dce19d3 JL |
107 | --submodule-prefix=<path>:: |
108 | Prepend <path> to paths printed in informative messages | |
109 | such as "Fetching submodule foo". This option is used | |
110 | internally when recursing over submodules. | |
88a21979 JL |
111 | |
112 | --recurse-submodules-default=[yes|on-demand]:: | |
113 | This option is used internally to temporarily provide a | |
114 | non-negative default value for the --recurse-submodules | |
115 | option. All other methods of configuring fetch's submodule | |
116 | recursion (such as settings in linkgit:gitmodules[5] and | |
117 | linkgit:git-config[1]) override this option, as does | |
118 | specifying --[no-]recurse-submodules directly. | |
7dce19d3 | 119 | endif::git-pull[] |
93d69d86 | 120 | |
3240240f SB |
121 | -u:: |
122 | --update-head-ok:: | |
0b444cdb | 123 | By default 'git fetch' refuses to update the head which |
93d69d86 | 124 | corresponds to the current branch. This flag disables the |
0b444cdb TR |
125 | check. This is purely for the internal use for 'git pull' |
126 | to communicate with 'git fetch', and unless you are | |
a597fb0e JH |
127 | implementing your own Porcelain you are not supposed to |
128 | use it. | |
03febf99 | 129 | |
6b276e19 JA |
130 | --upload-pack <upload-pack>:: |
131 | When given, and the repository to fetch from is handled | |
0b444cdb | 132 | by 'git fetch-pack', '--exec=<upload-pack>' is passed to |
6b276e19 JA |
133 | the command to specify non-default path for the command |
134 | run on the other end. | |
135 | ||
136 | ifndef::git-pull[] | |
137 | -q:: | |
138 | --quiet:: | |
139 | Pass --quiet to git-fetch-pack and silence any other internally | |
9839018e TRC |
140 | used git commands. Progress is not reported to the standard error |
141 | stream. | |
6b276e19 JA |
142 | |
143 | -v:: | |
144 | --verbose:: | |
145 | Be verbose. | |
146 | endif::git-pull[] | |
9839018e TRC |
147 | |
148 | --progress:: | |
149 | Progress status is reported on the standard error stream | |
150 | by default when it is attached to a terminal, unless -q | |
151 | is specified. This flag forces progress status even if the | |
152 | standard error stream is not directed to a terminal. |