Related here. Instructions here guide with example:
john=John Smith <John.Smith@someplace.net>
tom=Tom Johnson <Tom.Johnson@bigcity.com>
but what does it mean? Suppose I want to replace "hh <right@gmail.com>" with "hhh <right@gmail.com>", what would that line look like? What do the terms username, mapping and filename mean? I can find this part "username mapping filename" from "convert/__init__.py":
cmdtable = {
"convert":
(convert,
[('A', 'authors', '', _('username mapping filename')),
('d', 'dest-type', '', _('destination repository type')),
('', 'filemap', '', _('remap file names using contents of file')),
('r', 'rev', '', _('import up to target revision REV')),
It makes an object where the authors are stored as dict, convcmd.py line 79:
class converter(object):
def __init__(self, ui, source, dest, revmapfile, opts):
self.source = source
self.dest = dest
self.ui = ui
self.opts = opts
self.commitcache = {}
self.authors = {}
self.authorfile = None
it splits the each line in authorfile with "=" but from this onwards I am lost how does it work. So what is the authors.file to fix wrong authors supposingly meant to look like? If you can, please point me to the source line because I find the docs very unreadable.
[Update]
I have tried all kind of options for开发者_Go百科 the file but the "$ hg status"/"$ hg log --template '{author}\n'" won't get changed. Either I need to do something odd after the command "$ hg convert --authors conversionAuthors ." or I cannot match the authors. How can I know "exact match"? How can I know whether I succeed?
The convert extension uses a literal text substitution.
A quick experiment shows if you want to replace hh <right@gmail.com>, you simply create an author map file with these contents:
hh <right@gmail.com> = hhh <right@gmail.com>
The left-hand side must be an exact match for the author you want to replace. If it is not an exact match, no substitution is performed.
加载中,请稍侯......
精彩评论