问题: 当使用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'文档但未能找到有效的组合。
答案 0 :(得分:1)
你的问题的答案在于正确使用revsets。结帐hg help revsets
以获取更深入的信息。
在这种情况下,这应该有效:
hg glog -r"last(ancestors(-11) and not hidden())::-11" --hidden
它会列出-11到-11的第一个非隐藏祖先(包括那两个)的所有变更集。