Yes, it's possible. Use the Convert extension and then hg convert
from the repository with the bad names to the new repository with the good names and use an authormap. There are many things you can accomplish using the convert extension and converting from Mercurial to another Mercurial repo.
Authormap file, supposing Eric Hopper <bumpy@bar.com>
is the canonical name for the author:
Eric Hopper <bouncy@foo.com>=Eric Hopper <bumpy@bar.com>
Eric M. Hopper <bouncy@foo.com>=Eric Hopper <bumpy@bar.com>
Eric Hopper <bouncy@baz.com>=Eric Hopper <bumpy@bar.com>
Then:
hg convert -s hg -d hg --authormap authormap badnamesrepo goodnamesrepo
Note: that while converting an hg to an hg repository will not always create lots of new changesets, in this case it will, and they will be equivalent to (but different from) changesets in the original repository. This means that everybody using this repository is going to have to erase any clones they have and fetch new ones.
In the general case, converting an hg repository to an hg repository is likely to create at least a few new changesets or there wouldn't be a reason to do it. And that will almost certainly necessitate everybody destroying all their clones and re-cloning.
If your analysis tool has the ability to remap author names, that's probably the better way to go. But that's not what you asked for, so I gave you the answer you asked for. :-)
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…