以下命令将显示最后两个合并之间的所有关联更改集:
$hg log -r "first(last(merge(),2)):last(merge()) & ancestors(last(merge()))"
那个复杂的小表达式(我将在后面简单介绍)会做到以下几点:
> x:y为您提供x和y之间的所有变更集
> merge()是一个包含所有合并的revset.
> last(…,n)给出一组的最后n个变更集,n默认为1
> first(…)为您提供集合的第一个变更集
> ancestors(last(merge()))是一个包含上次合并的所有祖先的集合
结合所有这些,上面的表达式变得(准备?):给我在最后两个合并中的第一个和最后一个合并之间的所有变更集,这恰好是最后一次合并的祖先.
祖先(…)位过滤掉任何不相关的变更集.
您可以通过添加&;将此限制为特定分支上的更改.分支(分支).例如,如果要从默认值合并到发布分支,则可以执行以下 *** 作:
$hg log -r "first(last(merge(),2)):last(merge()) & ancestors(last(merge())) & branch(default)"
这将不包括实际的合并本身,因为它们将出现在发布分支上.
希望这是有道理的 – 今天下午我会看看我是否可以采用更简单的方式,但这是第一个让人想起的.在此期间,如果您使用此功能,则可以通过在用户hgrc文件中创建revset别名来简化:
[revsetalias]contrib = first(last(merge(),2)):last(merge()) & ancestors(last(merge()))
所以你可以使用:
$hg log -r "contrib"$hg log -r "contrib & branch(default)"
有关更多信息,请查看hg help revsets.
总结以上是内存溢出为你收集整理的mercurial – 列出自上次合并以来的所有合并变更集?全部内容,希望文章能够帮你解决mercurial – 列出自上次合并以来的所有合并变更集?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)