包裹长git reflog线?

时间:2014-05-04 14:43:24

标签: git reflog

git reflog显示单行描述,将其剪裁在右边缘。

74a8491 HEAD@{0}: checkout: moving from feature/x to feature/y
74a8491 HEAD@{1}: commit (merge): Merge branch 'feature/x' of https://github.com/
949d0e4 HEAD@{2}: ...

如何显示整个reflog消息,包装以获取必要的最小行(简短描述为单行)?

3 个答案:

答案 0 :(得分:3)

git reflog可以使用您想要的任何git log选项。

如果您希望与每个git reflog条目关联的完整提交消息,您可以执行:

git reflog show --pretty=full

或者,对于"单行进行简短说明"

git reflog show --pretty=format:"%h : %s"

您可以使用core.pager config强制包装长消息。

答案 1 :(得分:2)

要模仿'git reflog',添加作者,超时时间和包装长描述行:

git reflog show --pretty='%C(yellow)%h%Creset %gd %w(110,0,26)%gs %C(cyan)%cn%Creset %ar'
  • %h是短哈希
  • %w(wrapwidth, firstLineIndent, indent)导致下一个字段被包裹到给定的宽度
  • %gs是reflog说明
  • %cn是提交者的名字
  • %ar是相对格式(之前的)更改日期

永久保留:

启用命令:

git r     # call it whatever you want

将它放入〜/ .gitconfig文件中:

[别名]     r = reflog show --pretty ='%C(黄色)%h%Creset%gd%w(110,0,26)%gs%C(青色)%cn%Creset%ar'

(别名可以命名为'reflog'或现有命令以外的任何名称。)

答案 2 :(得分:1)

通常的寻呼机为less,您可以切换其换行选项。在寻呼机提示下输入-Sh将提供更多血腥的细节。