如何用mercurial重写历史来修改作者的姓名?

时间:2012-07-25 03:55:51

标签: mercurial eclipse-plugin google-code mercurialeclipse

我在Google代码上有一个mercurial(hg)存储库,看起来像this

我想要做的是编辑作者的姓名(在这种情况下是'Peter Andrews')因为拼写错误。存储库被放弃了,除了尝试更改名称之外,不会再进行任何提交。

我怎么能这样做?

感谢。

PS。我正在使用MercurialEclipse

1 个答案:

答案 0 :(得分:0)

我所知道的唯一可行方法是将您的存储库转换为新的Mercurial存储库,使用Mercurial的Convert extension--authors option。 在转换过程中,您可以通过提供带有“映射”的文本文件来更改作者的姓名。

从第二个链接引用:

  

转换也可以在转换期间重新映射作者姓名,如果是   提供了--authors选项。参数应该是一个简单的文本文件,将每个源提交作者映射到目标提交作者。它   对于使用UNIX登录来识别作者的源SCM很方便(例如:   CVS)。例如:

john=John Smith <John.Smith@someplace.net>
tom=Tom Johnson <Tom.Johnson@bigcity.com>

<强>缺点:
您必须删除Google Code上的存储库并将其替换为已转换的存储库,这意味着克隆旧存储库的每个人都需要删除其本地副本并再次拉取。 删除和替换服务器上的repo可能会感觉有点笨拙,但AFAIK之后没有其他方法可以更改作者名称。