如何找到合并到Mercurial中另一个分支的分支的最新变更集

时间:2012-12-14 17:43:42

标签: mercurial

我在dev命名分支中有一些匿名分支,最终将合并到default分支。如何找到已合并到dev分支的default分支的最新变更集?

这就是我的想法:

  1. 我首先展示了default分支中的所有合并:

    merge() and branch(default)
    
  2. 我真正想要的是dev分支中的父母:

    parents(merge() and branch(default)) and branch(dev)
    
  3. 这为我提供了合并到dev分支的所有default个变更集。现在我只需添加max即可获得最新版本。这是最后一个表达式:

    max(parents(merge() and branch(default)) and branch(dev))
    
  4. 问题是我认为这个查询太大了。是否可以通过更简单的查询获取此信息?

1 个答案:

答案 0 :(得分:1)

我认为这样做会:

max(p2(branch(default)) & branch(dev))

它获取dev上的变更集,它们是default分支上变更集的第二个父级,而max获取最新的变更集。

虽然只有一个条件更短(因为p2条件有效地结合了查询的parentmerge,因为如果您不是第二个父级,则不能成为第二个父级合并)。