git/Documentation/git-var.adoc

156 lines
5.2 KiB
Plaintext

git-var(1)
==========
NAME
----
git-var - Show a Git logical variable
SYNOPSIS
--------
[synopsis]
git var [-z] -l
git var [-z] <variable>...
DESCRIPTION
-----------
Prints Git logical variables. When a single variable is requested, its
bare value is printed. When multiple variables are requested, they are
printed as `VARIABLE=value` pairs, separated by newlines.
If `-z` is given, the output format changes depending on the mode:
* With a single variable, the bare value is terminated by a NUL byte.
* With multiple variables or with `-l`, the variable name and value are
separated by a newline, and each entry is terminated by a NUL byte
(`VARIABLE\nvalue\0`).
If any requested variable has no value, nothing is printed for that
variable, processing continues for the remaining variables, and the
command exits with code 1.
OPTIONS
-------
`-l`::
Display the logical variables. 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 list`.)
`-z`::
Terminate entries with NUL instead of newline. When used with
`-l` or when multiple variables are requested, the variable name
and its value are separated by a newline, and each entry is
terminated with a NUL byte.
EXAMPLES
--------
* Get the author identity:
+
------------
$ git var GIT_AUTHOR_IDENT
Eric W. Biederman <ebiederm@lnxi.com> 1121223278 -0600
------------
* Get the author name and email:
+
------------
$ git var GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
GIT_AUTHOR_NAME=Eric W. Biederman
GIT_AUTHOR_EMAIL=ebiederm@lnxi.com
------------
VARIABLES
---------
`GIT_AUTHOR_IDENT`::
`GIT_AUTHOR_NAME`::
`GIT_AUTHOR_EMAIL`::
`GIT_AUTHOR_DATE`::
The authorship information that would be recorded in the
resulting commit object if you ran `git commit` right now.
`GIT_AUTHOR_IDENT` consists of the author's name, e-mail
address, and timestamp+timezone. These three pieces of
information are available separately as `GIT_AUTHOR_NAME`,
`GIT_AUTHOR_EMAIL`, and `GIT_AUTHOR_DATE`.
`GIT_COMMITTER_IDENT`::
`GIT_COMMITTER_NAME`::
`GIT_COMMITTER_EMAIL`::
`GIT_COMMITTER_DATE`::
The committer information that would be recorded in the
resulting commit object if you ran `git commit` right now.
`GIT_COMMITTER_IDENT` consists of the committer's name, e-mail
address, and timestamp+timezone. These three pieces of
information are available separately as `GIT_COMMITTER_NAME`,
`GIT_COMMITTER_EMAIL`, and `GIT_COMMITTER_DATE`.
`GIT_SIGNING_KEY`::
The key that would be used to sign the resulting commit if you were
to run `git commit` right now.
`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 `$GIT_EDITOR`, then
`core.editor` configuration value, 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
`$GIT_SEQUENCE_EDITOR`, then `sequence.editor` configuration value,
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 `$GIT_PAGER`, then the value of `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 (or NUL bytes if `-z` is given),
and are listed in order from highest to lowest priority. When querying
multiple variables (or using `-l`), each value is output as a separate
`VARIABLE=value` entry (or `VARIABLE\nvalue\0` with `-z`). 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