Von*_*onC 41

YGL的答案是正确的日志,请参阅此主题:

"hg help log"中的提示可能是:
"如果未指定修订范围,则默认为tip:0".将其与" hg help multirevs "中的knowlegde相结合.那是:

hg log -r :

multirevs:

当Mercurial接受多个修订时,它们可以单独指定,也可以作为拓扑连续范围提供,以" :"字符分隔.

范围表示法的语法是[BEGIN]:[END],其中BEGINEND是修订标识符.
这两个BEGINEND是可选的.
如果BEGIN未指定,则默认为版本号0.
如果END未指定,则默认为提示.
范围":"因此意味着"所有修订".

如果BEGIN大于END,则以相反的顺序处理修订.

范围充当闭合间隔.这意味着范围3:5给出3,4和5.
类似地,范围9:6给出9,8,7和6.


注意:如果你想对Graphlog做同样的事情(glog它的行为类似于普通log命令的一个子集),除了它还使用log.左边的ASCII字符打印代表修订历史的图表,你需要一个补丁.

我应该警告你,对于大型图表来说,这将是非常缓慢的,特别是0:tip.
请参见补丁1补丁2.我正在努力改善这一点.


YGL*_*YGL 22

你试过了吗

hg log -r :


nad*_*000 10

如果您想将反向顺序设置为默认值,请将此行添加到hgrc(<repo>/.hg/hgrc,$ HOME/.hgrc,/ etc/mercurial/hgrc):

[defaults]
log = -r :
Run Code Online (Sandbox Code Playgroud)

  • 我最初赞成这个,但现在我意识到这对我不起作用,因为它打破了hg日志显示单个修订版的能力.也就是说,hg log现在反过来显示修订版.好.但是,hg log -r 25将不会仅显示更改集25 - 它仍将显示整个更改集列表. (3认同)

pma*_*v99 6

nad2000的答案的另一种选择是简单地添加一个别名 ~/.hgrc

[alias]
logr = log -r :
Run Code Online (Sandbox Code Playgroud)

现在调用hg logr以相反的顺序显示日志.不幸的是,正如VonC所指出的那样,无法定义相同类型的别名glog,因为hg glog -r :不会以相反的顺序显示日志.

  • +1添加别名似乎比更改默认行为更好.(@firebush解释原因) (3认同)

Laz*_*ger 6

只是为了提一下

Revset(长)版本:

hg log -r "sort(all(),-date)"


sco*_*obi 6

我很惊讶还没有人提到reverse()。也许这是一个新的 hg 功能?

hg log -r "reverse(all())"

当然,您也可以使用tip:0。我喜欢反向,因为我和祖先混在一起时也经常使用它。

hg log -r "reverse(::12345)"