git log --graph 表格格式
Posted
技术标签:
【中文标题】git log --graph 表格格式【英文标题】:git log --graph tabular format 【发布时间】:2020-05-26 16:21:15 【问题描述】:我正在尝试制作git log
表格的输出。在阅读了不同的帖子和git log
手册页后,我得到了这个版本:
git log --graph --pretty=format:'%<(10,trunc)%Cred%h%Creset -%C(yellow)%<(20,trunc)%d%Creset %<(50,trunc)%s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
这还不错,但仍然有两个问题。
首先,我不能强制缩进图表本身。我可以缩进的第一个字段是哈希 (%h
)。如何缩进图本身的最大空间?
第二,如果我尝试通过写入%<(15)(%cr)
来缩进相对时间字段(%cr
),我会缩进文本,但缩进字段中不包含右括号。见下图。如何缩进包括括号在内的整个文本?
【问题讨论】:
如何将其传送到文本编辑器(如 sed)以根据需要对其进行格式化?您的请求看起来很具体。 【参考方案1】:我找到了第一点的答案:
我不得不将%<(10, trunc)%Cred%h
替换为%>|(15,trunc)%Cred%h
。
来自git-log manual page:
%>(<N>)
、%>|(<N>)
:分别类似于%<(<N>)
、%<|(<N>)
,但在左侧填充空格
对于第二点,我找到了解决方法。我不得不将列数调整为预期的输出长度。这适用于我的情况,但它不是通用的。
这解决了问题:
【讨论】:
以上是关于git log --graph 表格格式的主要内容,如果未能解决你的问题,请参考以下文章
“git log --graph”或“hg graphlog”如何工作?