diff options
Diffstat (limited to 'Documentation/fetch-options.adoc')
| -rw-r--r-- | Documentation/fetch-options.adoc | 211 |
1 files changed, 106 insertions, 105 deletions
diff --git a/Documentation/fetch-options.adoc b/Documentation/fetch-options.adoc index ad1e1f49be..fcba46ee9e 100644 --- a/Documentation/fetch-options.adoc +++ b/Documentation/fetch-options.adoc @@ -1,41 +1,41 @@ ---all:: ---no-all:: +`--all`:: +`--no-all`:: Fetch all remotes, except for the ones that has the `remote.<name>.skipFetchAll` configuration variable set. This overrides the configuration variable `fetch.all`. --a:: ---append:: +`-a`:: +`--append`:: Append ref names and object names of fetched refs to the existing contents of `.git/FETCH_HEAD`. Without this option old data in `.git/FETCH_HEAD` will be overwritten. ---atomic:: +`--atomic`:: Use an atomic transaction to update local refs. Either all refs are updated, or on error, no refs are updated. ---depth=<depth>:: +`--depth=<depth>`:: Limit fetching to the specified number of commits from the tip of each remote branch history. If fetching to a 'shallow' repository created by `git clone` with `--depth=<depth>` option (see linkgit:git-clone[1]), deepen or shorten the history to the specified number of commits. Tags for the deepened commits are not fetched. ---deepen=<depth>:: - Similar to --depth, except it specifies the number of commits +`--deepen=<depth>`:: + Similar to `--depth`, except it specifies the number of commits from the current shallow boundary instead of from the tip of each remote branch history. ---shallow-since=<date>:: +`--shallow-since=<date>`:: Deepen or shorten the history of a shallow repository to - include all reachable commits after <date>. + include all reachable commits after _<date>_. ---shallow-exclude=<ref>:: +`--shallow-exclude=<ref>`:: Deepen or shorten the history of a shallow repository to exclude commits reachable from a specified remote branch or tag. This option can be specified multiple times. ---unshallow:: +`--unshallow`:: If the source repository is complete, convert a shallow repository to a complete one, removing all the limitations imposed by shallow repositories. @@ -43,13 +43,13 @@ If the source repository is shallow, fetch as much as possible so that the current repository has the same history as the source repository. ---update-shallow:: +`--update-shallow`:: By default when fetching from a shallow repository, `git fetch` refuses refs that require updating - .git/shallow. This option updates .git/shallow and accepts such + `.git/shallow`. This option updates `.git/shallow` and accepts such refs. ---negotiation-tip=<commit|glob>:: +`--negotiation-tip=(<commit>|<glob>)`:: By default, Git will report, to the server, commits reachable from all local refs to find common commits in an attempt to reduce the size of the to-be-received packfile. If specified, @@ -69,28 +69,28 @@ See also the `fetch.negotiationAlgorithm` and `push.negotiate` configuration variables documented in linkgit:git-config[1], and the `--negotiate-only` option below. ---negotiate-only:: +`--negotiate-only`:: Do not fetch anything from the server, and instead print the - ancestors of the provided `--negotiation-tip=*` arguments, + ancestors of the provided `--negotiation-tip=` arguments, which we have in common with the server. + -This is incompatible with `--recurse-submodules=[yes|on-demand]`. +This is incompatible with `--recurse-submodules=(yes|on-demand)`. Internally this is used to implement the `push.negotiate` option, see linkgit:git-config[1]. ---dry-run:: +`--dry-run`:: Show what would be done, without making any changes. ---porcelain:: +`--porcelain`:: Print the output to standard output in an easy-to-parse format for scripts. See section OUTPUT in linkgit:git-fetch[1] for details. + -This is incompatible with `--recurse-submodules=[yes|on-demand]` and takes +This is incompatible with `--recurse-submodules=(yes|on-demand)` and takes precedence over the `fetch.output` config option. ifndef::git-pull[] ---write-fetch-head:: ---no-write-fetch-head:: +`--write-fetch-head`:: +`--no-write-fetch-head`:: Write the list of remote refs fetched in the `FETCH_HEAD` file directly under `$GIT_DIR`. This is the default. Passing `--no-write-fetch-head` from the command line tells @@ -98,64 +98,65 @@ ifndef::git-pull[] file is never written. endif::git-pull[] --f:: ---force:: - When 'git fetch' is used with `<src>:<dst>` refspec, it may - refuse to update the local branch as discussed +`-f`:: +`--force`:: ifdef::git-pull[] - in the `<refspec>` part of the linkgit:git-fetch[1] - documentation. +When `git fetch` is used with `<src>:<dst>` refspec, it may +refuse to update the local branch as discussed +in the _<refspec>_ part of the linkgit:git-fetch[1] +documentation. endif::git-pull[] ifndef::git-pull[] - in the `<refspec>` part below. +When `git fetch` is used with `<src>:<dst>` refspec, it may +refuse to update the local branch as discussed in the _<refspec>_ part below. endif::git-pull[] - This option overrides that check. +This option overrides that check. --k:: ---keep:: +`-k`:: +`--keep`:: Keep downloaded pack. ifndef::git-pull[] ---multiple:: - Allow several <repository> and <group> arguments to be - specified. No <refspec>s may be specified. - ---auto-maintenance:: ---no-auto-maintenance:: ---auto-gc:: ---no-auto-gc:: +`--multiple`:: + Allow several _<repository>_ and _<group>_ arguments to be + specified. No __<refspec>__s may be specified. + +`--auto-maintenance`:: +`--no-auto-maintenance`:: +`--auto-gc`:: +`--no-auto-gc`:: Run `git maintenance run --auto` at the end to perform automatic - repository maintenance if needed. (`--[no-]auto-gc` is a synonym.) + repository maintenance if needed. This is enabled by default. ---write-commit-graph:: ---no-write-commit-graph:: +`--write-commit-graph`:: +`--no-write-commit-graph`:: Write a commit-graph after fetching. This overrides the config setting `fetch.writeCommitGraph`. endif::git-pull[] ---prefetch:: +`--prefetch`:: Modify the configured refspec to place all refs into the `refs/prefetch/` namespace. See the `prefetch` task in linkgit:git-maintenance[1]. --p:: ---prune:: +`-p`:: +`--prune`:: Before fetching, remove any remote-tracking references that no longer exist on the remote. Tags are not subject to pruning if they are fetched only because of the default tag - auto-following or due to a --tags option. However, if tags + auto-following or due to a `--tags` option. However, if tags are fetched due to an explicit refspec (either on the command line or in the remote configuration, for example if the remote - was cloned with the --mirror option), then they are also + was cloned with the `--mirror` option), then they are also subject to pruning. Supplying `--prune-tags` is a shorthand for providing the tag refspec. ifndef::git-pull[] + See the PRUNING section below for more details. --P:: ---prune-tags:: +`-P`:: +`--prune-tags`:: Before fetching, remove any local tags that no longer exist on the remote if `--prune` is enabled. This option should be used more carefully, unlike `--prune` it will remove any local @@ -168,17 +169,17 @@ See the PRUNING section below for more details. endif::git-pull[] ifndef::git-pull[] --n:: +`-n`:: endif::git-pull[] ---no-tags:: +`--no-tags`:: By default, tags that point at objects that are downloaded from the remote repository are fetched and stored locally. This option disables this automatic tag following. The default - behavior for a remote may be specified with the remote.<name>.tagOpt + behavior for a remote may be specified with the `remote.<name>.tagOpt` setting. See linkgit:git-config[1]. ifndef::git-pull[] ---refetch:: +`--refetch`:: Instead of negotiating with the server to avoid transferring commits and associated objects that are already present locally, this option fetches all objects as a fresh clone would. Use this to reapply a partial clone @@ -187,29 +188,29 @@ ifndef::git-pull[] object database pack consolidation to remove any duplicate objects. endif::git-pull[] ---refmap=<refspec>:: +`--refmap=<refspec>`:: When fetching refs listed on the command line, use the specified refspec (can be given more than once) to map the refs to remote-tracking branches, instead of the values of - `remote.*.fetch` configuration variables for the remote - repository. Providing an empty `<refspec>` to the + `remote.<name>.fetch` configuration variables for the remote + repository. Providing an empty _<refspec>_ to the `--refmap` option causes Git to ignore the configured refspecs and rely entirely on the refspecs supplied as command-line arguments. See section on "Configured Remote-tracking Branches" for details. --t:: ---tags:: +`-t`:: +`--tags`:: Fetch all tags from the remote (i.e., fetch remote tags `refs/tags/*` into local tags with the same name), in addition to whatever else would otherwise be fetched. Using this - option alone does not subject tags to pruning, even if --prune + option alone does not subject tags to pruning, even if `--prune` is used (though tags may be pruned anyway if they are also the destination of an explicit refspec; see `--prune`). ifndef::git-pull[] ---recurse-submodules[=(yes|on-demand|no)]:: - This option controls if and under what conditions new commits of +`--recurse-submodules[=(yes|on-demand|no)]`:: + Control if and under what conditions new commits of submodules should be fetched too. When recursing through submodules, `git fetch` always attempts to fetch "changed" submodules, that is, a submodule that has commits that are referenced by a newly fetched @@ -219,19 +220,19 @@ ifndef::git-pull[] adds a new submodule, that submodule cannot be fetched until it is cloned e.g. by `git submodule update`. + -When set to 'on-demand', only changed submodules are fetched. When set -to 'yes', all populated submodules are fetched and submodules that are -both unpopulated and changed are fetched. When set to 'no', submodules +When set to `on-demand`, only changed submodules are fetched. When set +to `yes`, all populated submodules are fetched and submodules that are +both unpopulated and changed are fetched. When set to `no`, submodules are never fetched. + When unspecified, this uses the value of `fetch.recurseSubmodules` if it -is set (see linkgit:git-config[1]), defaulting to 'on-demand' if unset. -When this option is used without any value, it defaults to 'yes'. +is set (see linkgit:git-config[1]), defaulting to `on-demand` if unset. +When this option is used without any value, it defaults to `yes`. endif::git-pull[] --j:: ---jobs=<n>:: - Number of parallel children to be used for all forms of fetching. +`-j <n>`:: +`--jobs=<n>`:: + Parallelize all forms of fetching up to _<n>_ jobs at a time. + If the `--multiple` option was specified, the different remotes will be fetched in parallel. If multiple submodules are fetched, they will be fetched in @@ -242,12 +243,12 @@ Typically, parallel recursive and multi-remote fetches will be faster. By default fetches are performed sequentially, not in parallel. ifndef::git-pull[] ---no-recurse-submodules:: +`--no-recurse-submodules`:: Disable recursive fetching of submodules (this has the same effect as using the `--recurse-submodules=no` option). endif::git-pull[] ---set-upstream:: +`--set-upstream`:: If the remote is fetched successfully, add upstream (tracking) reference, used by argument-less linkgit:git-pull[1] and other commands. For more information, @@ -255,57 +256,57 @@ endif::git-pull[] linkgit:git-config[1]. ifndef::git-pull[] ---submodule-prefix=<path>:: - Prepend <path> to paths printed in informative messages +`--submodule-prefix=<path>`:: + Prepend _<path>_ to paths printed in informative messages such as "Fetching submodule foo". This option is used internally when recursing over submodules. ---recurse-submodules-default=[yes|on-demand]:: +`--recurse-submodules-default=(yes|on-demand)`:: This option is used internally to temporarily provide a - non-negative default value for the --recurse-submodules + non-negative default value for the `--recurse-submodules` option. All other methods of configuring fetch's submodule recursion (such as settings in linkgit:gitmodules[5] and linkgit:git-config[1]) override this option, as does - specifying --[no-]recurse-submodules directly. + specifying `--[no-]recurse-submodules` directly. --u:: ---update-head-ok:: - By default 'git fetch' refuses to update the head which +`-u`:: +`--update-head-ok`:: + By default `git fetch` refuses to update the head which corresponds to the current branch. This flag disables the - check. This is purely for the internal use for 'git pull' - to communicate with 'git fetch', and unless you are + check. This is purely for the internal use for `git pull` + to communicate with `git fetch`, and unless you are implementing your own Porcelain you are not supposed to use it. endif::git-pull[] ---upload-pack <upload-pack>:: +`--upload-pack <upload-pack>`:: When given, and the repository to fetch from is handled - by 'git fetch-pack', `--exec=<upload-pack>` is passed to + by `git fetch-pack`, `--exec=<upload-pack>` is passed to the command to specify non-default path for the command run on the other end. ifndef::git-pull[] --q:: ---quiet:: - Pass --quiet to git-fetch-pack and silence any other internally +`-q`:: +`--quiet`:: + Pass `--quiet` to `git-fetch-pack` and silence any other internally used git commands. Progress is not reported to the standard error stream. --v:: ---verbose:: +`-v`:: +`--verbose`:: Be verbose. endif::git-pull[] ---progress:: +`--progress`:: Progress status is reported on the standard error stream - by default when it is attached to a terminal, unless -q + by default when it is attached to a terminal, unless `-q` is specified. This flag forces progress status even if the standard error stream is not directed to a terminal. --o <option>:: ---server-option=<option>:: +`-o <option>`:: +`--server-option=<option>`:: Transmit the given string to the server when communicating using - protocol version 2. The given string must not contain a NUL or LF + protocol version 2. The given string must not contain a _NUL_ or _LF_ character. The server's handling of server options, including unknown ones, is server-specific. When multiple `--server-option=<option>` are given, they are all @@ -314,23 +315,23 @@ endif::git-pull[] the values of configuration variable `remote.<name>.serverOption` are used instead. ---show-forced-updates:: +`--show-forced-updates`:: By default, git checks if a branch is force-updated during - fetch. This can be disabled through fetch.showForcedUpdates, but - the --show-forced-updates option guarantees this check occurs. + fetch. This can be disabled through `fetch.showForcedUpdates`, but + the `--show-forced-updates` option guarantees this check occurs. See linkgit:git-config[1]. ---no-show-forced-updates:: +`--no-show-forced-updates`:: By default, git checks if a branch is force-updated during - fetch. Pass --no-show-forced-updates or set fetch.showForcedUpdates + fetch. Pass `--no-show-forced-updates` or set `fetch.showForcedUpdates` to false to skip this check for performance reasons. If used during - 'git-pull' the --ff-only option will still check for forced updates + `git-pull` the `--ff-only` option will still check for forced updates before attempting a fast-forward update. See linkgit:git-config[1]. --4:: ---ipv4:: +`-4`:: +`--ipv4`:: Use IPv4 addresses only, ignoring IPv6 addresses. --6:: ---ipv6:: +`-6`:: +`--ipv6`:: Use IPv6 addresses only, ignoring IPv4 addresses. |
