Home Explore Blog CI



git

5th chunk of `Documentation/fetch-options.adoc`
07ffe867fbf912b919c79afaa91bfdd1d0ba4ed35a4332100000000100000c4c
 is fetched successfully, add upstream
	(tracking) reference, used by argument-less
	linkgit:git-pull[1] and other commands. For more information,
	see `branch.<name>.merge` and `branch.<name>.remote` in
	linkgit:git-config[1].

ifndef::git-pull[]
--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]::
	This option is used internally to temporarily provide a
	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.

-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
	implementing your own Porcelain you are not supposed to
	use it.
endif::git-pull[]

--upload-pack <upload-pack>::
	When given, and the repository to fetch from is handled
	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
	used git commands. Progress is not reported to the standard error
	stream.

-v::
--verbose::
	Be verbose.
endif::git-pull[]

--progress::
	Progress status is reported on the standard error stream
	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>::
	Transmit the given string to the server when communicating using
	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
	sent to the other side in the order listed on the command line.
	When no `--server-option=<option>` is given from the command line,
	the values of configuration variable `remote.<name>.serverOption`
	are used instead.

--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.
	See linkgit:git-config[1].

--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
	to false to skip this check for performance reasons. If used during
	'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::
	Use IPv4 addresses only, ignoring IPv6 addresses.

-6::
--ipv6::
	Use IPv6 addresses only, ignoring IPv4 addresses.

Title: Git Fetch Options for Customization and Debugging
Summary
The git fetch command has various options for customization, including settings for verbosity, progress reporting, server options, and IP address preference, as well as flags for internal use, such as updating the head of the current branch and showing forced updates, allowing for fine-grained control over the fetch process.