From: Matt Kraai Date: Fri, 6 Jul 2007 00:29:41 +0000 (-0700) Subject: Prefer EMAIL to username@hostname. X-Git-Tag: v1.5.3-rc1~67 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=46f74f007b86452c4b4135f5145f94eefc994ea2;p=git.git Prefer EMAIL to username@hostname. The environment variable $EMAIL gives a better default of user's preferred e-mail address than the hardcoded "username@hostname", as it is understood by many existing programs. We still honor GIT_*_EMAIL environment variables and user.email configuration variable give them higher precedence, so that the user can override $EMAIL or "username@hostname", as they are likely to be more specific to the context of working on a particular project. Signed-off-by: Matt Kraai Signed-off-by: Junio C Hamano --- diff --git a/ident.c b/ident.c index 3d49608e6..6612d17eb 100644 --- a/ident.c +++ b/ident.c @@ -83,11 +83,18 @@ static void setup_ident(void) } if (!git_default_email[0]) { - if (!pw) - pw = getpwuid(getuid()); - if (!pw) - die("You don't exist. Go away!"); - copy_email(pw); + const char *email = getenv("EMAIL"); + + if (email && email[0]) + strlcpy(git_default_email, email, + sizeof(git_default_email)); + else { + if (!pw) + pw = getpwuid(getuid()); + if (!pw) + die("You don't exist. Go away!"); + copy_email(pw); + } } /* And set the default date */ @@ -197,8 +204,6 @@ const char *fmt_ident(const char *name, const char *email, name = git_default_name; if (!email) email = git_default_email; - if (!email) - email = getenv("EMAIL"); if (!*name) { struct passwd *pw;