我试图通过定义自己的风格来调整hg log
的输出。事实上,只是将信息添加到默认样式将是完美的。是否有一个地方可以让我自己编写默认样式(默认,紧凑,...)的描述?
答案 0 :(得分:2)
从其他地方的其他评论中,您可以找到样式位置所在的位置:
hg debuginstall --config ui.editor=cat
或者如果你选择了一个目录下的目录并且告诉你它们在哪里(可能应该用于不匹配的样式),或者使用一个bug,那么它适用于1.9.2:
hg in --style paper
如果要为输出着色,可以立即使用颜色扩展名。 添加到.hgrc:
[extensions]
color=
答案 1 :(得分:1)
如果您知道如何使用Mercurial 模板功能理解的各种关键字(请参阅hg help templating
获取完整的使用文档),那么您可以:
通过在命令行上提供模板来指定您的选择,例如,
$ hg tip --template“{rev} at {date | isodate}”\ n
882 at 2014-12-17 08:50 +0100
或编辑具有相同格式的ascii文件,并将其与样式选项一起使用,例如,
$ cat~ / mystyle.txt
changeset =“{rev} at {date | isodate} \ n”
$ hg tip --style~ / mystyle.txt
882 at 2014-12-17 08:50 +0100
答案 2 :(得分:1)
经过一番研究,我终于找到了hg log
的默认样式的位置,位于我的ubuntu 14.04上
/usr/share/mercurial/templates/
您可以在那里找到以下文件:
map-cmdline.bisect
map-cmdline.changelog
map-cmdline.compact
map-cmdline.default
map-cmdline.phases
map-cmdline.xml
它们不包含任何配色方案,但允许我构建我的修补版本'默认版本。
答案 3 :(得分:0)
这很奇怪,但默认模板是用mercurial代码硬编码的。
文件map-cmdline.default
永远不会在运行时读取,但可用于精确复制mercurial输出(从而扩展它)。
如何扩展hg log
输出以包含通过hg-git克隆的git存储库的git commit hash的示例。
查找map-cmdline.default
的位置:
$ hg debuginstall --config ui.editor=cat | grep "default template"
checking default template (/usr/lib/python2.7/dist-packages/mercurial/templates/map-cmdline.default)
修改/etc/mercurial/hgrc
,粘贴稍微修改过的map-cmdline.default
版本:
...first part of your hgrc...
[templates]
# support "git-commit" line in hg log
changeset_git = '{cset}{cset_git}{branches}{bookmarks}{tags}{parents}{user}{ldate}{ltroubles}{lobsfate}{summary}\n'
cset_git = '{if(gitnode, "git-commit: {label("status.unknown", gitnode|short)}\n")}'
...the rest of 'templates' section of map-cmdline.default...
[templatealias]
...the whole 'templatealias' section of map-cmdline.default...
示例输出:
~/git$ hg log --graph
@ changeset: 54881:d420062ce3d6
|\ git-commit: 6326d2e53311 <-- new line, only appears in git clones
| | tag: default/pu
| | tag: tip
| | parent: 54879:31a4c8ccc461
| | parent: 54880:691b9814f119
| | user: Junio C Hamano <gitster@pobox.com>
| | date: Sun Mar 25 10:52:08 2018 -0700
| | summary: Merge branch 'jh/partial-clone' into pu