mirror of
https://github.com/git/git.git
synced 2024-12-04 23:44:14 +08:00
ed773a18c6
Much like with attributes files, sometimes programs would like to know the location of configuration files at the global or system levels. However, it isn't always clear where these may live, especially for the system file, which may have been hard-coded at compile time or computed dynamically based on the runtime prefix. Since other parties cannot intuitively know how Git was compiled and where it looks for these files, help them by providing variables that can be queried. Because we have multiple paths for global config values, print them in order from highest to lowest priority, and be sure to split on newlines so that "git var -l" produces two entries for the global value. However, be careful not to split all values on newlines, since our editor values could well contain such characters, and we don't want to split them in such a case. Note in the documentation that some values may contain multiple paths and that callers should be prepared for that fact. This helps people write code that will continue to work in the event we allow multiple items elsewhere in the future. Signed-off-by: brian m. carlson <bk2204@github.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
106 lines
3.1 KiB
Plaintext
106 lines
3.1 KiB
Plaintext
git-var(1)
|
|
==========
|
|
|
|
NAME
|
|
----
|
|
git-var - Show a Git logical variable
|
|
|
|
|
|
SYNOPSIS
|
|
--------
|
|
[verse]
|
|
'git var' (-l | <variable>)
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
Prints a Git logical variable. Exits with code 1 if the variable has
|
|
no value.
|
|
|
|
OPTIONS
|
|
-------
|
|
-l::
|
|
Cause the logical variables to be listed. In addition, all the
|
|
variables of the Git configuration file .git/config are listed
|
|
as well. (However, the configuration variables listing functionality
|
|
is deprecated in favor of `git config -l`.)
|
|
|
|
EXAMPLES
|
|
--------
|
|
$ git var GIT_AUTHOR_IDENT
|
|
Eric W. Biederman <ebiederm@lnxi.com> 1121223278 -0600
|
|
|
|
|
|
VARIABLES
|
|
---------
|
|
GIT_AUTHOR_IDENT::
|
|
The author of a piece of code.
|
|
|
|
GIT_COMMITTER_IDENT::
|
|
The person who put a piece of code into Git.
|
|
|
|
GIT_EDITOR::
|
|
Text editor for use by Git commands. The value is meant to be
|
|
interpreted by the shell when it is used. Examples: `~/bin/vi`,
|
|
`$SOME_ENVIRONMENT_VARIABLE`, `"C:\Program Files\Vim\gvim.exe"
|
|
--nofork`. The order of preference is the `$GIT_EDITOR`
|
|
environment variable, then `core.editor` configuration, then
|
|
`$VISUAL`, then `$EDITOR`, and then the default chosen at compile
|
|
time, which is usually 'vi'.
|
|
ifdef::git-default-editor[]
|
|
The build you are using chose '{git-default-editor}' as the default.
|
|
endif::git-default-editor[]
|
|
|
|
GIT_SEQUENCE_EDITOR::
|
|
Text editor used to edit the 'todo' file while running `git rebase
|
|
-i`. Like `GIT_EDITOR`, the value is meant to be interpreted by
|
|
the shell when it is used. The order of preference is the
|
|
`$GIT_SEQUENCE_EDITOR` environment variable, then
|
|
`sequence.editor` configuration, and then the value of `git var
|
|
GIT_EDITOR`.
|
|
|
|
GIT_PAGER::
|
|
Text viewer for use by Git commands (e.g., 'less'). The value
|
|
is meant to be interpreted by the shell. The order of preference
|
|
is the `$GIT_PAGER` environment variable, then `core.pager`
|
|
configuration, then `$PAGER`, and then the default chosen at
|
|
compile time (usually 'less').
|
|
ifdef::git-default-pager[]
|
|
The build you are using chose '{git-default-pager}' as the default.
|
|
endif::git-default-pager[]
|
|
|
|
GIT_DEFAULT_BRANCH::
|
|
The name of the first branch created in newly initialized repositories.
|
|
|
|
GIT_SHELL_PATH::
|
|
The path of the binary providing the POSIX shell for commands which use the shell.
|
|
|
|
GIT_ATTR_SYSTEM::
|
|
The path to the system linkgit:gitattributes[5] file, if one is enabled.
|
|
|
|
GIT_ATTR_GLOBAL::
|
|
The path to the global (per-user) linkgit:gitattributes[5] file.
|
|
|
|
GIT_CONFIG_SYSTEM::
|
|
The path to the system configuration file, if one is enabled.
|
|
|
|
GIT_CONFIG_GLOBAL::
|
|
The path to the global (per-user) configuration files, if any.
|
|
|
|
Most path values contain only one value. However, some can contain multiple
|
|
values, which are separated by newlines, and are listed in order from highest to
|
|
lowest priority. Callers should be prepared for any such path value to contain
|
|
multiple items.
|
|
|
|
Note that paths are printed even if they do not exist, but not if they are
|
|
disabled by other environment variables.
|
|
|
|
SEE ALSO
|
|
--------
|
|
linkgit:git-commit-tree[1]
|
|
linkgit:git-tag[1]
|
|
linkgit:git-config[1]
|
|
|
|
GIT
|
|
---
|
|
Part of the linkgit:git[1] suite
|