2f70587502
When getpwuid fails, we give a cute but cryptic message. While it makes sense if you know that getpwuid or identity functions are being called, this code is triggered behind the scenes by quite a few git commands these days (e.g., receive-pack on a remote server might use it for a reflog; the current message is hard to distinguish from an authentication error). Let's switch to something that gives a little more context. While we're at it, we can factor out all of the cut-and-pastes of the "you don't exist" message into a wrapper function. Rather than provide xgetpwuid, let's make it even more specific to just getting the passwd entry for the current uid. That's the only way we use getpwuid anyway, and it lets us make an even more specific error message. The current message also fails to mention errno. While the usual cause for getpwuid failing is that the user does not exist, mentioning errno makes it easier to diagnose these problems. Note that POSIX specifies that errno remain untouched if the passwd entry does not exist (but will be set on actual errors), whereas some systems will return ENOENT or similar for a missing entry. We handle both cases in our wrapper. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
71 lines
1.8 KiB
Plaintext
71 lines
1.8 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.
|
|
|
|
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`.)
|
|
|
|
EXAMPLE
|
|
--------
|
|
$ 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_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[]
|
|
|
|
SEE ALSO
|
|
--------
|
|
linkgit:git-commit-tree[1]
|
|
linkgit:git-tag[1]
|
|
linkgit:git-config[1]
|
|
|
|
GIT
|
|
---
|
|
Part of the linkgit:git[1] suite
|