在 Git 责备中显示提交 ID、更长的日期和行号

Posted

技术标签:

【中文标题】在 Git 责备中显示提交 ID、更长的日期和行号【英文标题】:Show commit ID, longer Date and the line number in Git blame 【发布时间】:2019-10-27 09:12:53 【问题描述】:

我想将 git blame 的输出减少到提交 ID、日期更改和行号。

我试图获取提交 ID、作者姓名和行号,但我的主要目标是从行中删除作者姓名,

我觉得很难,因为作者的名字中可能有很多单词,(2-3个空格分隔)所以无法将它们删除。我是 awk 和 sed 的新手。

 git blame --date=short <filename> | sed -e 's, [^(]*, ,' -e 's, [^ ]*\( *[0-9]*)\), \1,'

这样我就可以显示提交 ID、作者姓名和代码行了。

但我希望输出是

Commit ID    Date Timestamp   Line number

【问题讨论】:

【参考方案1】:

如果您不需要时间戳,只需使用-s 标志:

禁止输出中的作者姓名和时间戳。

(doc)

另外,-e 将输出作者电子邮件而不是姓名,因为没有空格,所以更容易解析。

【讨论】:

我需要提交 ID、时间戳和行号。我只是想压制作者姓名

以上是关于在 Git 责备中显示提交 ID、更长的日期和行号的主要内容,如果未能解决你的问题,请参考以下文章

Git责备显示没有历史记录

如何解决需要比 SQL 中允许的更长的列名?

使用 ImGui 显示更长的字符串 [关闭]

如何配置“git log”以显示“提交日期”

向下滚动屏幕以获取更长的文本,例如 kivy 中的故事

在 Vim 中自动包装长的 Git 提交消息