john=John Smith <John.Smith@someplace.net>
tom=Tom Johnson <Tom.Johnson@bigcity.com>
但它是什么意思?假设我想用"hh <right@gmail.com>"
替换"hhh <right@gmail.com>"
,该行会是什么样的?用户名,映射和文件名是什么意思?我可以从"username mapping filename"
找到此部分"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')),
它创建了一个对象,其中作者存储为dict,convcmd.py第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
它将authorfile中的每一行拆分为"="
,但从此开始我失去了它是如何工作的。那么作者修复错误作者的文件是什么意思?如果可以的话,请指出我的源代码行,因为我发现这些文档非常难以理解。
[更新]
我已尝试过该文件的所有选项,但"$ hg status"
/ "$ hg log --template '{author}\n'"
不会更改。我要么在命令"$ hg convert --authors conversionAuthors ."
之后做一些奇怪的事情,要么我无法与作者匹配。我怎么知道“完全匹配”?我怎么知道我是否成功了?
答案 0 :(得分:6)
转化扩展程序使用文字文字替换。
快速实验显示,如果您要替换hh <right@gmail.com>
,只需创建包含以下内容的作者地图文件:
hh <right@gmail.com> = hhh <right@gmail.com>
要替换的作者,左侧必须是完全匹配。如果不是完全匹配,则不执行替换。