32

如果不是,这是 git 的功能吗?

4

7 回答 7

43

YGL 的答案是正确的日志,请参阅此线程

“hg help log”中的提示可能是:
“如果未指定修订范围,则默认为 tip:0”。将此与“ hg help multirevs ”中的知识相结合。那是:

hg log -r :

多转

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

范围表示法的语法是[BEGIN]:[END], 其中BEGINEND是修订标识符。
两者都是可选的BEGIN。 如果未指定,则默认为修订号 0。 如果未指定,则默认为提示。 因此,范围“:”表示“所有修订版”。END
BEGIN
END

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

范围充当闭合区间。这意味着范围 of3:5给出 3、4 和 5。
类似地,范围 of9:6给出 9、8、7 和 6。


注意:如果你想对 Graphlog 做同样的事情除了它还在.补丁glogloglog

我应该警告你,对于大图来说它会慢,尤其是0:tip.
请参阅补丁 1补丁 2。我正在努力改进它。

于 2010-05-08T23:44:43.947 回答
24

你试过了吗

hg log -r :

于 2010-05-08T23:21:00.690 回答
11

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

[defaults]
log = -r :
于 2011-03-09T02:34:16.980 回答
7

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

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

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

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

于 2014-10-03T11:47:59.983 回答
7

nad2000 的答案的替代方法是简单地在~/.hgrc

[alias]
logr = log -r :

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

于 2013-03-27T15:23:35.717 回答
7

只是为了提

Revset(长)版本:

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

于 2013-04-29T19:22:12.600 回答
1

不确定这是否已经改变或者我做错了什么,但我从 Mercurial 获得了这样的逆时间顺序日志:

hg log -r tip:0

我通常也将它们限制为最近的日志条目,使用-l

hg log -r tip:0 -l 3
于 2013-04-29T15:30:52.190 回答