hg glog是否可以按相反的顺序排列?

时间:2013-09-11 12:45:09

标签: mercurial

我知道调用hg log可以撤消hg log -r:的顺序。然后最旧的提交是最顶层,最新的项目位于底部。

来自graphlog扩展程序的hg glog(或hg log -G)是否可能类似?

2 个答案:

答案 0 :(得分:1)

不,您无法撤消,但可以使用--rev选项将其限制在一定范围内。

hg glog --rev 0:1

hg glog --rev 1:0

都显示修订版1高于修订版0,但你至少看到了输出的尾端。

答案 1 :(得分:0)

您不能使用-G选项,因为它用于打印“树”(请参阅​​--o - o)。 您可以使用的是来自hg revsets的谓词'sort':

"sort(set[, [-]key... [, ...]])"
  

按键排序。默认排序顺序为升序,指定键   作为“-key”按降序排序。键可以是:

     
      
  • “rev”代表修订号,
  •   
  • 分支名称的“分支”,
  •   
  • “desc”表示提交消息(描述),
  •   
  • “user”代表用户名(“author”可以用作别名),
  •   
  • “date”表示反向地形排序的提交日期“topo”
  •   

<强> e.g。 2 :以相反的顺序打印最后10次提交:

$ hg log --rev 'sort(last(:,10), -rev)'

其中:

  • last(:,10)版本集从所有提交中获取最后10次提交
  • sort(revset, -rev)按相反的顺序对修订版revset进行排序

<强> e.g。 1 以相反顺序打印不属于基本仓库的所有变更集

$ hg log -r "sort(ancestors(.), -rev) and outgoing('ssh://hg@your/external/repo')"

其中:

  • ancestors(.)版本集接受当前分支的所有提交
  • and outgoing()只会保留外发更改集