我想批量编辑一些提交以自动修改作者和提交消息(能够应用一些正则表达式就可以了)。
我知道这是在重写历史,如果有克隆就会引起麻烦,并且会改变提交 ID。
最好的方法是什么?
答案1
- 最容易自动化的方式:消息队列
简而言之:
- qimport -r REV
- qrefresh (
-u
针对用户,-m
|-l
针对提交消息) - qfinish+qdelete
(可能)恢复变更集的正确顺序(不记得 qfinished cset 会出现在 DAG 中的什么位置)
- 两步法(有技巧和限制)
- 重写作者转换扩展名(Mercurial->Mercurial 转换)
--authormap
(需要唯一作者) - 使用以下方式更改提交信息規則編輯
- 重写作者转换扩展名(Mercurial->Mercurial 转换)
答案2
使用hg export -g -o <outfile>
,outfile
用您喜欢的任何工具进行处理,然后用重新导入hg import <outfile>
。