On Sun, 2 Jun 2019, Segher Boessenkool wrote: > > > Git has an identity (well, two) _per commit_, and there is no way you can > > > reconstruct people's prefered name and email address (at any point in > > > time, > > > for every commit separately) correctly. IMO it is much better to not even > > > try. We already *have* enough info for anyone to trivially look up who > > > wrote > > > what, and what might be that person's email address at the time. But > > > pretending that is more than a guess is just wrong. > > > > I think not doing a best-effort identification (name+email) is just as > > And I think guessing is not a "best effort", but just wrong.
It's 100% accurate about the identity of the person who was the committer (modulo the one username from the gcc2 period where it was clear who the author of the commits by that username was, and so that went in the author map, but not clear that was the same as the committer, who did not commit patches for any other author). So it's as accurate as any case where someone committing natively in git for someone else failed to use --author (and if the CVS/SVN commit included a ChangeLog entry, we have credit given from there via the "changelogs" feature). I think failing to credit (by name and email address) the person implied by the commit metadata, in the absence of positive evidence (such as a ChangeLog entry) for the change being authored by someone else, is just wrong, in the same way it's wrong not to use --author when committing for someone else in git. Where a person used different names over time, there's no generally applicable rule for whether they'd prefer the latest version or the version used at the time to be used in reference to past commits, and I think using the most current version known is most appropriate, in the absence of a ChangeLog entry added in the commit, unless they've specified a preference for some other rule for which commits get what name. Likewise for email addresses. -- Joseph S. Myers jos...@codesourcery.com