git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Make git tag -s friendly to keys with comments
@ 2009-06-09 23:48 Petr Baudis
  0 siblings, 0 replies; only message in thread
From: Petr Baudis @ 2009-06-09 23:48 UTC (permalink / raw)
  To: git

git tag -s has very unfriendly default method of picking key ids;
it is documented in git-tag(1) as just the e-mail, but in fact
it is "Real Name <email>". This will never pick the right default
if the key was created with a comment in the name, like:

	Petr Baudis (Sirius Labs) <pasky@ucw.cz>
	Petr Baudis (SuSE Labs) <pasky@suse.cz>

This patch makes git tag -s default to just the e-mail address,
as documented.

Signed-off-by: Petr Baudis <pasky@suse.cz>

---

diff --git a/builtin-tag.c b/builtin-tag.c
index e544430..9901925 100644
--- a/builtin-tag.c
+++ b/builtin-tag.c
@@ -165,8 +165,10 @@ static int do_sign(struct strbuf *buffer)
 	int i, j;
 
 	if (!*signingkey) {
-		if (strlcpy(signingkey, git_committer_info(IDENT_ERROR_ON_NO_NAME),
-				sizeof(signingkey)) > sizeof(signingkey) - 1)
+		char *commit_email = strchr(git_committer_info(IDENT_ERROR_ON_NO_NAME), '<');
+		assert(commit_email);
+		if (strlcpy(signingkey, commit_email, sizeof(signingkey))
+				> sizeof(signingkey) - 1)
 			return error("committer info too long.");
 		bracket = strchr(signingkey, '>');
 		if (bracket)

-- 
				Petr "Pasky" Baudis
The lyf so short, the craft so long to lerne. -- Chaucer

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2009-06-09 23:49 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-06-09 23:48 [PATCH] Make git tag -s friendly to keys with comments Petr Baudis

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).