编辑作者以获取特定的变更集

Fre*_*kNS 6 mercurial

目前我正在考虑在工作中从subversion过渡到Mercurial,因此Mercurial存储库尚未发布.

我已经使用authormap参数将我们的用户名转换为Mercurial格式,这很好.

不幸的是,有两个人一直在同名.存储库不是很大,所以我想改变作者以匹配合适的人.出于这个原因,我想问:

有没有办法更改特定变更集或变更集列表的作者?

Lau*_*lst 8

您可以使用捆绑的扩展Mercurial Queues(MQ)来更改提交作者.请注意,只有历史记录是线性的,MQ才会起作用.如果有分支,则需要先将它们重新绑定到临时侧分支,然后在编辑后将它们重新绑定.

首先qimport是更改直到您要修改的第一个变更集:

hg qinit
hg qimport -g -r <first-revnr>:tip
Run Code Online (Sandbox Code Playgroud)

然后使用qpopqgoto导航到相应的更改集:

hg qgoto <revnr>.diff
Run Code Online (Sandbox Code Playgroud)

然后使用qrefresh更改当前活动变更集的用户信息:

hg qrefresh -u "Some User <user@example.com>"
Run Code Online (Sandbox Code Playgroud)

您可以验证hg log用户是否已正确更新.在此之后,重复所有其他更改集.

完成后,qpush使用所有补丁并qfinish最终确定存储库.

hg qpush -a
hg qfinish -a
Run Code Online (Sandbox Code Playgroud)