mirror of
https://github.com/git/git
synced 2024-08-27 11:39:22 +00:00
![Tamino Bauknecht](/assets/img/avatar_default.png)
Introduce a boolean configuration option fetch.all which allows to fetch all available remotes by default. The config option can be overridden by explicitly specifying a remote or by using --no-all. The behavior for --all is unchanged and calling git-fetch with --all and a remote will still result in an error. Additionally, describe the configuration variable in the config documentation and implement new tests to cover the expected behavior. Also add --no-all to the command-line documentation of git-fetch. Signed-off-by: Tamino Bauknecht <dev@tb6.eu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
129 lines
5.7 KiB
Plaintext
129 lines
5.7 KiB
Plaintext
fetch.recurseSubmodules::
|
|
This option controls whether `git fetch` (and the underlying fetch
|
|
in `git pull`) will recursively fetch into populated submodules.
|
|
This option can be set either to a boolean value or to 'on-demand'.
|
|
Setting it to a boolean changes the behavior of fetch and pull to
|
|
recurse unconditionally into submodules when set to true or to not
|
|
recurse at all when set to false. When set to 'on-demand', fetch and
|
|
pull will only recurse into a populated submodule when its
|
|
superproject retrieves a commit that updates the submodule's
|
|
reference.
|
|
Defaults to 'on-demand', or to the value of 'submodule.recurse' if set.
|
|
|
|
fetch.fsckObjects::
|
|
If it is set to true, git-fetch-pack will check all fetched
|
|
objects. See `transfer.fsckObjects` for what's
|
|
checked. Defaults to false. If not set, the value of
|
|
`transfer.fsckObjects` is used instead.
|
|
|
|
fetch.fsck.<msg-id>::
|
|
Acts like `fsck.<msg-id>`, but is used by
|
|
linkgit:git-fetch-pack[1] instead of linkgit:git-fsck[1]. See
|
|
the `fsck.<msg-id>` documentation for details.
|
|
|
|
fetch.fsck.skipList::
|
|
Acts like `fsck.skipList`, but is used by
|
|
linkgit:git-fetch-pack[1] instead of linkgit:git-fsck[1]. See
|
|
the `fsck.skipList` documentation for details.
|
|
|
|
fetch.unpackLimit::
|
|
If the number of objects fetched over the Git native
|
|
transfer is below this
|
|
limit, then the objects will be unpacked into loose object
|
|
files. However if the number of received objects equals or
|
|
exceeds this limit then the received pack will be stored as
|
|
a pack, after adding any missing delta bases. Storing the
|
|
pack from a push can make the push operation complete faster,
|
|
especially on slow filesystems. If not set, the value of
|
|
`transfer.unpackLimit` is used instead.
|
|
|
|
fetch.prune::
|
|
If true, fetch will automatically behave as if the `--prune`
|
|
option was given on the command line. See also `remote.<name>.prune`
|
|
and the PRUNING section of linkgit:git-fetch[1].
|
|
|
|
fetch.pruneTags::
|
|
If true, fetch will automatically behave as if the
|
|
`refs/tags/*:refs/tags/*` refspec was provided when pruning,
|
|
if not set already. This allows for setting both this option
|
|
and `fetch.prune` to maintain a 1=1 mapping to upstream
|
|
refs. See also `remote.<name>.pruneTags` and the PRUNING
|
|
section of linkgit:git-fetch[1].
|
|
|
|
fetch.all::
|
|
If true, fetch will attempt to update all available remotes.
|
|
This behavior can be overridden by passing `--no-all` or by
|
|
explicitly specifying one or more remote(s) to fetch from.
|
|
Defaults to false.
|
|
|
|
fetch.output::
|
|
Control how ref update status is printed. Valid values are
|
|
`full` and `compact`. Default value is `full`. See the
|
|
OUTPUT section in linkgit:git-fetch[1] for details.
|
|
|
|
fetch.negotiationAlgorithm::
|
|
Control how information about the commits in the local repository
|
|
is sent when negotiating the contents of the packfile to be sent by
|
|
the server. Set to "consecutive" to use an algorithm that walks
|
|
over consecutive commits checking each one. Set to "skipping" to
|
|
use an algorithm that skips commits in an effort to converge
|
|
faster, but may result in a larger-than-necessary packfile; or set
|
|
to "noop" to not send any information at all, which will almost
|
|
certainly result in a larger-than-necessary packfile, but will skip
|
|
the negotiation step. Set to "default" to override settings made
|
|
previously and use the default behaviour. The default is normally
|
|
"consecutive", but if `feature.experimental` is true, then the
|
|
default is "skipping". Unknown values will cause 'git fetch' to
|
|
error out.
|
|
+
|
|
See also the `--negotiate-only` and `--negotiation-tip` options to
|
|
linkgit:git-fetch[1].
|
|
|
|
fetch.showForcedUpdates::
|
|
Set to false to enable `--no-show-forced-updates` in
|
|
linkgit:git-fetch[1] and linkgit:git-pull[1] commands.
|
|
Defaults to true.
|
|
|
|
fetch.parallel::
|
|
Specifies the maximal number of fetch operations to be run in parallel
|
|
at a time (submodules, or remotes when the `--multiple` option of
|
|
linkgit:git-fetch[1] is in effect).
|
|
+
|
|
A value of 0 will give some reasonable default. If unset, it defaults to 1.
|
|
+
|
|
For submodules, this setting can be overridden using the `submodule.fetchJobs`
|
|
config setting.
|
|
|
|
fetch.writeCommitGraph::
|
|
Set to true to write a commit-graph after every `git fetch` command
|
|
that downloads a pack-file from a remote. Using the `--split` option,
|
|
most executions will create a very small commit-graph file on top of
|
|
the existing commit-graph file(s). Occasionally, these files will
|
|
merge and the write may take longer. Having an updated commit-graph
|
|
file helps performance of many Git commands, including `git merge-base`,
|
|
`git push -f`, and `git log --graph`. Defaults to false.
|
|
|
|
fetch.bundleURI::
|
|
This value stores a URI for downloading Git object data from a bundle
|
|
URI before performing an incremental fetch from the origin Git server.
|
|
This is similar to how the `--bundle-uri` option behaves in
|
|
linkgit:git-clone[1]. `git clone --bundle-uri` will set the
|
|
`fetch.bundleURI` value if the supplied bundle URI contains a bundle
|
|
list that is organized for incremental fetches.
|
|
+
|
|
If you modify this value and your repository has a `fetch.bundleCreationToken`
|
|
value, then remove that `fetch.bundleCreationToken` value before fetching from
|
|
the new bundle URI.
|
|
|
|
fetch.bundleCreationToken::
|
|
When using `fetch.bundleURI` to fetch incrementally from a bundle
|
|
list that uses the "creationToken" heuristic, this config value
|
|
stores the maximum `creationToken` value of the downloaded bundles.
|
|
This value is used to prevent downloading bundles in the future
|
|
if the advertised `creationToken` is not strictly larger than this
|
|
value.
|
|
+
|
|
The creation token values are chosen by the provider serving the specific
|
|
bundle URI. If you modify the URI at `fetch.bundleURI`, then be sure to
|
|
remove the value for the `fetch.bundleCreationToken` value before fetching.
|