为什么我必须在git log结束时点击q

Nic*_*ilt 78 git

git log -n 20 --pretty=oneline
Run Code Online (Sandbox Code Playgroud)

我告诉git我只需要查看最近20次提交.我讨厌打Q以摆脱END.有没有办法让我不必打q.

Cas*_*bel 80

Git会自动为您分页输出,因为日志往往容易溢出单个终端窗口大小(您可能是极少数例外情况之一 - 一种oneline格式和一个小的提交限制).如果您不想这样,请使用:

git --no-pager log -n 20 --pretty=oneline
Run Code Online (Sandbox Code Playgroud)

请注意,这确实意味着你会得到一些难看的包装,因为寻呼机之前已经为你关闭包装(因为你可以使用光标键向左右滚动).

  • @DeckTrout没有任何信息,没有人可以帮助你.如果您可以设置具体的设置,可以尝试提出新问题.这个答案适用于OP(以及很多其他人),所以显然有些东西对你不同. (4认同)

Way*_*rad 24

您可以通过告诉它使用cat而不是更少来"关闭"git分页.此后,当您需要分页时,将输出通过less,或者如果您只想查看顶部,则输出.

git config --global core.pager cat
Run Code Online (Sandbox Code Playgroud)

我关闭了自动分页,因为我经常在emacs中运行git,这既不需要也不能很好地运行.


has*_*sen 13

less-F如果内容适合一个屏幕,则接受自动退出的参数


Deb*_*ski 8

git log -n 20 --pretty=oneline | cat

--no-pager选项稍短,但也会删除任何颜色.


anz*_*ome 8

如果要--no-pager在别名中使用,请以这种方式设置别名:

hist = !git --no-pager log --pretty=format:\"%h %ad | %s%d [%an]\" --graph --date=short
Run Code Online (Sandbox Code Playgroud)