如何在Mercurial中显示两个修订版之间的历史和祖先变化

时间:2017-03-08 20:29:55

标签: mercurial tortoisehg

考虑以下TortoiseHg图:

TortoiseHg graph

我们希望获得代码的两个版本之间的修订历史记录,标记为5.5.82和5.5.83。使用hg日志功能很简单,但它留下了一些东西,这还不够完整。我想它甚至可能包含未合并到5.5.83中的内容,如果它们作为5.5.82和5.5.83之间隔离分支的修订而存在。

例如:修订版114.它包含与该提交相关的注释,但该注释中没有任何有趣内容 - 它只是标准的“与x合并”注释。

有没有办法运行hg日志,只会列出5.5.83和5.5.82之间的变化,包括可能早于5.5.82但在5.5.82之后合并的东西? 100,99,98,97等等?

我们要做的是为任意修订版之间的所有更改生成更改日志。有没有办法做到这一点?

非常感谢

1 个答案:

答案 0 :(得分:3)

请参阅hg help log。您需要的相关选项是:

 -r --rev REV [+]         show the specified revision or revset
 -f --follow              follow changeset history, or file history across
                          copies and renames
 -P --prune REV [+]       do not display revision or any of its ancestors
 -M --no-merges           do not show merges

要查看有助于标记1.02.0之间更改的所有修订,请跳过合并:

hg log -r 2.0 -fMP 1.0

使用模板参数并使用良好的修订注释,您可以生成近似项目符号发布说明的内容:

hg log -r 2.0 -fMP 1.0 --template "* {desc}\r\n"