2

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 消息,包装以占用最少的必要行(简短描述为单行)?

4

3 回答 3

3

git reflog可以采取任何git log你想要的选择。

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

git reflog show --pretty=full

或者,对于“简短描述的单行”

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

core.pager您可以使用config强制对长消息进行换行。

于 2014-05-04T15:03:34.087 回答
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(yellow)%h%Creset %gd %w(110,0,26)%gs %C(cyan)%cn%Creset %ar'

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

于 2014-05-04T19:58:19.977 回答
1

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

于 2014-05-06T19:18:25.823 回答