繁体   English   中英

我可以获取hg日志以反向顺序打印历史记录吗?

[英]Can I get hg log to print the history in reverse order?

如果没有,这是git的功能吗?

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 (行为类似于(子集)普通log命令的glog做同样的glog ,除了它还使用log左边的ASCII字符打印表示修订历史的图表。),你将需要一个补丁

我应该警告你,对于大型图形来说,它会非常慢,尤其是0:tip
请参见补丁1补丁2 我正在努力改善这一点。

你试过了吗

hg log -r :

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

[defaults]
log = -r :

nad2000的答案的另一种方法是在~/.hgrc添加一个别名

[alias]
logr = log -r :

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

只是为了提一下

Revset(长)版本:

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

我很惊讶没人提到反向()。 也许这是一个更新的hg功能?

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

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

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

不确定这是否已经改变或者我做错了什么,但我从Mercurial获得反向时间顺序日志,如下所示:

hg log -r tip:0

我通常使用-l将它们限制为最新的日志条目:

hg log -r tip:0 -l 3

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM