git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[RFC] empty ident?

From
Junio C Hamano <junkio@cox.net>
Date
Feb 18, 2006, 08:44 UTC
Message-ID
<7vzmkpqco1.fsf@assigned-by-dhcp.cox.net>

It appears that some people who did not care about having bogus names in their own commit messages are bitten by the recent change to require a sane environment [*1*].

While it was a good idea to prevent people from using bogus names to create commits and doing sign-offs, the error message is not very informative. This patch attempts to warn things upfront and hint people how to fix their environments.

Likes, dislikes, don't cares?
[Footnote]
*1* The thread is this one.
    http://marc.theaimsgroup.com/?t=113868084800004
    Especially this message.
    http://marc.theaimsgroup.com/?m=113932830015032
---
diff --git a/ident.c b/ident.c
index 23b8cfc..09d4d71 100644
--- a/ident.c
+++ b/ident.c
@@ -46,6 +46,15 @@ static void copy_gecos(struct passwd *w,
 
 }
 
+static const char au_env[] = "GIT_AUTHOR_NAME";
+static const char co_env[] = "GIT_COMMITTER_NAME";
+static const char env_hint[] =
+"\n*** Environment problem:\n"
+"*** Your name cannot be determined from your system services (gecos).\n"
+"*** You would need to set %s and %s\n"
+"*** environment variables; otherwise you won't be able to perform\n"
+"*** certain operations because of \"empty ident\" errors.\n\n";
+
 int setup_ident(void)
 {
 	int len;
@@ -57,6 +66,11 @@ int setup_ident(void)
 	/* Get the name ("gecos") */
 	copy_gecos(pw, git_default_name, sizeof(git_default_name));
 
+	if (!*git_default_name) {
+		if (!getenv(au_env) || !getenv(co_env))
+			fprintf(stderr, env_hint, au_env, co_env);
+	}
+
 	/* Make up a fake email address (name + '@' + hostname [+ '.' + domainname]) */
 	len = strlen(pw->pw_name);
 	if (len > sizeof(git_default_email)/2)
Next: Nicolas Vilz 'niv'
Message 1 of 5 in “[RFC] empty ident?”
  1. Junio C HamanoFeb 18, 2006
  2. Nicolas Vilz 'niv'Feb 18, 2006
  3. Nice error message for empty identsPetr Baudis, Feb 18, 2006
  4. Junio C HamanoFeb 18, 2006
  5. Delay "empty ident" errors until they really matter.Junio C Hamano, Feb 19, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.