Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 列出最近的mercurial哈希_Bash_Mercurial - Fatal编程技术网

Bash 列出最近的mercurial哈希

Bash 列出最近的mercurial哈希,bash,mercurial,Bash,Mercurial,hg是否有一种很好的方法,可以在单独的行中列出回购协议中最近提交的哈希值?hgid-我只提供当前提交 与hg log中的-l参数等效的东西,以便我可以执行以下操作: $ hg id -i -l 3 1eb0c5a3002e <--- youngest commit 321c6693361e <--- 2nd youngest commit 647724838c03 <--- 3rd youngest commit 我正在尝试获取散列参数的命令行完成,因此我需要一个命令来

hg是否有一种很好的方法,可以在单独的行中列出回购协议中最近提交的哈希值?hgid-我只提供当前提交

与hg log中的-l参数等效的东西,以便我可以执行以下操作:

$ hg id -i -l 3
1eb0c5a3002e  <--- youngest commit
321c6693361e  <--- 2nd youngest commit
647724838c03  <--- 3rd youngest commit
我正在尝试获取散列参数的命令行完成,因此我需要一个命令来生成所有散列,我可以将这些散列放入compgen:

大多数情况下,我想要构建的散列将是签出提交,所以hgid-我可以正常工作,但是获得最后10个散列的完整列表会很好

提前感谢您的帮助

编辑

我在使用grep和awk方面做了一些工作:

但这并不好:

假设hg日志输出在不同版本中可能会发生变化 awk命令对我来说有点太神秘了: 如果您试图解决与bash tab completion不同的问题,则不适用于Windows
这就是你的日志。根据您的需要制作输出模板,例如

hg log -l10 --template="{node|short} {date} {author}\n"
给你的输出就像

0c4520bbf388 2017-06-07 12:25 +0200 username <user@example.com>
$ hg log -l 5 | grep changeset | awk -vn=12 '{print substr($0,length($0)-n+1)}'
1eb0c5a3002e
ec0db890a6c3
321c6693361e
4a1e2ca2df06
2d1ef7d57485
hg log -l10 --template="{node|short} {date} {author}\n"
0c4520bbf388 2017-06-07 12:25 +0200 username <user@example.com>
hg log --rev="sort(date('<now'))" --template="{node}\n" -l5