git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Reece Dunn <msclrhd@googlemail.com>
To: Michael Witten <mfwitten@gmail.com>
Cc: Mike Hommey <mh@glandium.org>, david@lang.hm, git@vger.kernel.org
Subject: Re: What's in a name? Let's use a (uuid,name,email) triplet
Date: Fri, 19 Mar 2010 14:57:59 +0000	[thread overview]
Message-ID: <3f4fd2641003190757y39050691y3dc0ca08bd5196fb@mail.gmail.com> (raw)
In-Reply-To: <b4087cc51003190516h42202e34k598a163c246cb9f2@mail.gmail.com>

On 19 March 2010 12:16, Michael Witten <mfwitten@gmail.com> wrote:
> On Fri, Mar 19, 2010 at 06:09, Reece Dunn <msclrhd@googlemail.com> wrote:
>> On 19 March 2010 11:54, Mike Hommey <mh@glandium.org> wrote:
>>> On Fri, Mar 19, 2010 at 04:45:38AM -0700, david@lang.hm wrote:
>>>> here is where you are missing the point.
>>>>
>>>> no, there is not 'much less chance' of it getting messed up.
>>>>
>>>> you seem to assume that people would never need to set the UUID on
>>>> multiple machines.
>>>>
>>>> if they don't need to set it on multiple machines, then the
>>>> e-mail/userid is going to be reliable anyway
>>>>
>>>> if they do need to set it on multiple machines and can't be bothered
>>>> to keep their e-mail consistant, why would they bother keeping this
>>>> additional thing considtant? Linus is pointing out that people don't
>>>> care now about their e-mail and name, and will care even less about
>>>> some abstract UUID
>>>>
>>>> people who care will already make their e-mail consistant.
>>>
>>> While I don't agree with the need for that uuid thing, I'd like to
>>> pinpoint that people who care can't necessarily make their e-mail
>>> consistant. For example, Linus used to use an @osdl.org address, and
>>> he now uses an @linux-foundation.org address. It's still the same Linus,
>>> but the (name, email) pair has legitimately changed.
>>
>> So create an aliases list that maps one (name,email) to another that
>> is from the same person. There is no need for an additional item (a
>> uuid) to solve this problem. It also means that searching on any
>> (name,email) pair will find the others, so you only need to
>> remember/find one of the identities for the person you are interested
>> in finding the commits for.
>>
>> AFAICS, mailmap is about correcting mistakes (primarily in the
>> reported name for a given email address). In this case, mailmap and
>> this aliases-map will work in conjunction with each other to give what
>> the original poster wanted. However, I haven't seen any of his replies
>> that answer this (or sufficiently address why mailmap does not solve
>> his problem).
>
> See:
>
>    http://marc.info/?l=git&m=126900051102958&w=2
>
> The idea is to distribute the responsibility for maintaining a
> consistent identity AND to make that responsibility EASY.
>
> The extra uuid `field' can only suffer from typos, while the
> name/email pair can suffer from typos, changing email accounts, and
> changing real life names. If the uuid `field' does get bungled by a
> typo or is not used, then we're no worse off than we were before.

What specific problem(s) are you trying to solve?

The main issue is identifying who made what changes to a repository
(e.g. by a script, or database/statistics algorithms). The mailmap
file allows for corrections to a canonical (name,email) pair for a
specified repository.

For identifying the same person working across multiple projects,
ideally they should keep the canonical (name,email) pair consistent
across all projects, with mailmap files in the respective projects to
keep the canonical form correct.

This canonical (name,email) pair is then a unique identifier for that
person and then effectively becomes a uuid. There is no need to add an
extra uuid field that needs *more* work fixing up errors and making
consistent.

If you change email address or name, *and* care enough about it being
consistent, there is no reason why you cannot update the mailmap file
to use the new canonical (name,email) pair.

Oh, and you are expressing it wrong (if I understand you correctly)...

What you are after is a string U (the uuid) that is used to identify a
person irrespective of their name and email. At the moment
   U = (name,email)
is used to achieve that, with mailmap to normalise the variations.

What you are trying to express is:
    U <=> (name,email)
where U can be any unique string. This is different from using a
(name,email,uuid) triple to identify someone.

So, lets say that I choose U=abc to identify myself uniquely, so that:
    "abc" <=> "Reece Dunn <msclrhd@gmail.com>"
    "abc" <=> "Reece Dunn <msclrhd@googlemail.com>"
    "abc" <=> "Reece Dunn <msclrhd@hotmail.com>"
    "abc" <=> "Reece H. Dunn <msclrhd@gmail.com>"
    "abc" <=> "Reece H Dunn <msclrhd@gmail.com>"

I would still need to define all these variations when and as they
occur in a repository to fixup any typos and email address changes
that occur, so why not just pick U = "Reece H. Dunn
<msclrhd@gmail.com>" as the canonical form instead of "abc" or some
other string?

As has been said, mailmap supports name variations ("Reece Dunn",
"Reece H Dunn", "Reece H. Dunn") and email variations
(msclrhd@hotmail.com, msclrhd@gmail.com, msclrhd@googlemail.com), so
how does a string that I need to set on the git client in addition to
name and email help me define a canonical form *in the git
repository*?

So, I'll ask again: what problems are you trying to solve that cannot
be solved by mailmap?

- Reece

  parent reply	other threads:[~2010-03-19 15:03 UTC|newest]

Thread overview: 104+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-18 13:23 What's in a name? Let's use a (uuid,name,email) triplet Michael Witten
2010-03-18 13:48 ` Jon Smirl
2010-03-18 14:26   ` Michael Witten
2010-03-18 17:27 ` Linus Torvalds
2010-03-18 19:02   ` Jon Smirl
2010-03-18 19:07     ` Linus Torvalds
2010-03-18 19:16       ` Jon Smirl
2010-03-18 19:20         ` Linus Torvalds
2010-03-18 19:37           ` Jon Smirl
2010-03-18 19:47             ` Linus Torvalds
2010-03-18 19:50               ` Linus Torvalds
2010-03-18 20:01                 ` Linus Torvalds
2010-03-19 19:39                   ` Junio C Hamano
2010-03-18 20:31                 ` Reece Dunn
2010-03-18 20:59                   ` Linus Torvalds
2010-03-18 19:32       ` Michael Witten
2010-03-18 19:40         ` Linus Torvalds
2010-03-18 19:47           ` Michael Witten
2010-03-18 19:52             ` Linus Torvalds
2010-03-18 20:00               ` Michael Witten
2010-03-18 19:52             ` Wincent Colaiuta
2010-03-18 19:40         ` Wincent Colaiuta
2010-03-18 19:42         ` Martin Langhoff
2010-03-18 22:36   ` Martin Langhoff
2010-03-18 23:17     ` Nicolas Pitre
2010-03-18 23:26       ` Jon Smirl
2010-03-18 23:34         ` Nicolas Pitre
2010-03-18 23:41           ` Jon Smirl
2010-03-18 23:58             ` Nicolas Pitre
2010-03-19  0:16               ` Jon Smirl
2010-03-19  0:17                 ` Linus Torvalds
2010-03-19  0:39                   ` Jon Smirl
2010-03-19  0:50                     ` Linus Torvalds
2010-03-19  1:12                       ` Jon Smirl
2010-03-19  1:45                         ` Nicolas Pitre
2010-03-19  2:05                           ` Jon Smirl
2010-03-18 23:34       ` Michael Witten
2010-03-18 18:42 ` Michael Witten
2010-03-18 18:47   ` Matthieu Moy
2010-03-18 18:57     ` Michael Witten
2010-03-18 19:12   ` Nicolas Pitre
2010-03-18 20:44   ` tytso
2010-03-18 21:12     ` Michael Witten
2010-03-18 21:19       ` Martin Langhoff
2010-03-18 21:29         ` Michael Witten
2010-03-18 21:39           ` Martin Langhoff
2010-03-18 21:46             ` Michael Witten
2010-03-18 21:55               ` Martin Langhoff
2010-03-18 22:02                 ` Michael Witten
2010-03-18 23:37                   ` Nicolas Pitre
2010-03-18 23:44                     ` Michael Witten
2010-03-19  0:03                       ` Nicolas Pitre
2010-03-19  0:27                         ` Michael Witten
2010-03-19  0:32                           ` Nicolas Pitre
2010-03-18 22:06               ` Reece Dunn
2010-03-18 21:57             ` Michael Witten
2010-03-19 12:34               ` Paolo Bonzini
2010-03-19 12:43                 ` Michael Witten
2010-03-19 12:53                   ` Paolo Bonzini
2010-03-19 13:03                     ` Michael Witten
2010-03-19 13:08                       ` Paolo Bonzini
2010-03-19 13:13                         ` Michael Witten
2010-03-19 13:41                           ` Wincent Colaiuta
2010-03-19 13:59                             ` Michael Witten
2010-03-19 14:13                               ` Martin Langhoff
2010-03-18 21:27       ` Linus Torvalds
2010-03-18 21:44         ` Michael Witten
2010-03-18 23:12         ` Jon Smirl
2010-03-18 22:17 ` A Large Angry SCM
2010-03-19  2:47 ` Sitaram Chamarty
2010-03-19  5:17   ` Nazri Ramliy
2010-03-19  8:41 ` Michael Haggerty
2010-03-19 11:39   ` Michael Witten
2010-03-19 11:45     ` david
2010-03-19 11:54       ` Mike Hommey
2010-03-19 12:09         ` Reece Dunn
2010-03-19 12:16           ` Michael Witten
2010-03-19 12:18             ` Michael Witten
2010-03-19 14:57             ` Reece Dunn [this message]
2010-03-19 15:26               ` Michael J Gruber
2010-03-19 16:05                 ` david
2010-03-19 17:16                   ` Michael Witten
2010-03-19 12:25           ` Jon Smirl
2010-03-19 12:40             ` Reece Dunn
2010-03-19 12:09         ` Michael Witten
2010-03-22 12:06           ` Mark Brown
2010-03-22 14:38           ` Michael Witten
2010-03-24 19:18             ` Erik Faye-Lund
2010-03-24 19:23               ` Michael Witten
2010-03-19 12:08       ` Michael Witten
2010-03-19 14:08     ` Michael Haggerty
2010-03-19 17:02       ` david
2010-03-19 17:06         ` Michael Witten
2010-03-24 18:50           ` Avi Kivity
2010-03-19 14:08 ` Jakub Narebski
2010-03-19 14:33   ` Jon Smirl
2010-03-19 14:52     ` Michael J Gruber
2010-03-19 14:40   ` Michael Witten
2010-03-19 14:56     ` Erik Faye-Lund
2010-03-19 15:05       ` Michael Witten
2010-03-19 15:12         ` Michael Witten
2010-03-19 15:25         ` Erik Faye-Lund
2010-03-19 15:12     ` Reece Dunn
2010-03-20  0:21     ` Jakub Narebski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3f4fd2641003190757y39050691y3dc0ca08bd5196fb@mail.gmail.com \
    --to=msclrhd@googlemail.com \
    --cc=david@lang.hm \
    --cc=git@vger.kernel.org \
    --cc=mfwitten@gmail.com \
    --cc=mh@glandium.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).