阶段:如何指定作为范围端点的过时变更集的第一个非过时的前导?

时间:2015-09-16 06:43:41

标签: mercurial

问题: 当使用Mercurial的'evolve'扩展时,一些变更集被标记为过时,因此例如隐藏在'log'命令中,如下所示:

$ hg log -11:
abort: hidden revision '-11'!
(use --hidden to access hidden revisions)

$ hg log -12: -T '{rev}'
o 27916
|
| o 27915
| |\
| o | 27914
| | |
| o | 27913
| |/
| | o 27912
| | |
| | o 27911
| | |\
| | o | 27910
| | | |
| | o | 27909
| | | |
| | | | @ 27908
| | | | |
| | | | o 27905
| | | | |

问题: 有没有办法指定范围端点来表示非隐藏的变更集,或者,如果给定的变更集被隐藏(如'-11'),则前面的非隐藏祖先(在此示例中为'-12')?我查看了'revsets'文档但未能找到有效的组合。

1 个答案:

答案 0 :(得分:1)

你的问题的答案在于正确使用revsets。结帐hg help revsets以获取更深入的信息。

在这种情况下,这应该有效:

hg glog -r"last(ancestors(-11) and not hidden())::-11" --hidden

它会列出-11到-11的第一个非隐藏祖先(包括那两个)的所有变更集。

相关问题