Home Explore Blog CI



git

4th chunk of `Documentation/git-config.adoc`
08698a7dfb7b72ac65ab4322fbfbc5b404d0d9d7f75b9f180000000100000fa0
 it is written
  as-is.
+

--bool::
--int::
--bool-or-int::
--path::
--expiry-date::
  Historical options for selecting a type specifier. Prefer instead `--type`
  (see above).

--no-type::
  Un-sets the previously set type specifier (if one was previously set). This
  option requests that 'git config' not canonicalize the retrieved variable.
  `--no-type` has no effect without `--type=<type>` or `--<type>`.

-z::
--null::
	For all options that output values and/or keys, always
	end values with the null character (instead of a
	newline). Use newline instead as a delimiter between
	key and value. This allows for secure parsing of the
	output without getting confused e.g. by values that
	contain line breaks.

--name-only::
	Output only the names of config variables for `list` or
	`get`.

--show-origin::
	Augment the output of all queried config options with the
	origin type (file, standard input, blob, command line) and
	the actual origin (config file path, ref, or blob id if
	applicable).

--show-scope::
	Similar to `--show-origin` in that it augments the output of
	all queried config options with the scope of that value
	(worktree, local, global, system, command).

--get-colorbool <name> [<stdout-is-tty>]::

	Find the color setting for `<name>` (e.g. `color.diff`) and output
	"true" or "false".  `<stdout-is-tty>` should be either "true" or
	"false", and is taken into account when configuration says
	"auto".  If `<stdout-is-tty>` is missing, then checks the standard
	output of the command itself, and exits with status 0 if color
	is to be used, or exits with status 1 otherwise.
	When the color setting for `name` is undefined, the command uses
	`color.ui` as fallback.

--[no-]includes::
	Respect `include.*` directives in config files when looking up
	values. Defaults to `off` when a specific file is given (e.g.,
	using `--file`, `--global`, etc) and `on` when searching all
	config files.

--default <value>::
  When using `get`, and the requested variable is not found, behave as if
  <value> were the value assigned to that variable.

DEPRECATED MODES
----------------

The following modes have been deprecated in favor of subcommands. It is
recommended to migrate to the new syntax.

'git config <name>'::
	Replaced by `git config get <name>`.

'git config <name> <value> [<value-pattern>]'::
	Replaced by `git config set [--value=<pattern>] <name> <value>`.

-l::
--list::
	Replaced by `git config list`.

--get <name> [<value-pattern>]::
	Replaced by `git config get [--value=<pattern>] <name>`.

--get-all <name> [<value-pattern>]::
	Replaced by `git config get [--value=<pattern>] --all <name>`.

--get-regexp <name-regexp>::
	Replaced by `git config get --all --show-names --regexp <name-regexp>`.

--get-urlmatch <name> <URL>::
	Replaced by `git config get --all --show-names --url=<URL> <name>`.

--get-color <name> [<default>]::
	Replaced by `git config get --type=color [--default=<default>] <name>`.

--add <name> <value>::
	Replaced by `git config set --append <name> <value>`.

--unset <name> [<value-pattern>]::
	Replaced by `git config unset [--value=<pattern>] <name>`.

--unset-all <name> [<value-pattern>]::
	Replaced by `git config unset [--value=<pattern>] --all <name>`.

--rename-section <old-name> <new-name>::
	Replaced by `git config rename-section <old-name> <new-name>`.

--remove-section <name>::
	Replaced by `git config remove-section <name>`.

-e::
--edit::
	Replaced by `git config edit`.

CONFIGURATION
-------------
`pager.config` is only respected when listing configuration, i.e., when
using `list` or `get` which may return multiple results. The default is to use
a pager.

[[FILES]]
FILES
-----

By default, 'git config' will read configuration options from multiple
files:

$(prefix)/etc/gitconfig::
	System-wide configuration file.

$XDG_CONFIG_HOME/git/config::
~/.gitconfig::
	User-specific configuration files. When the XDG_CONFIG_HOME environment
	variable is not set or empty, $HOME/.config/ is used as
	$XDG_CONFIG_HOME.
+

Title: Git Config Command Options and Deprecations
Summary
The git config command provides various options for configuration management, including type specifiers, output formats, and file specifications, while also deprecating older modes in favor of new subcommands for improved usability and consistency.