我正在运行gitimmersion.com实验室,每次运行:git hist --all命令时,它似乎都会破坏终端并抛弃它:
〜
〜
〜
〜
(END)
我无法再输入任何命令。所以我最终关闭了那个终端窗口并重新开始。
任何人都知道为什么会发生这种情况以及如何解决它?
谢谢!
答案 0 :(得分:10)
默认情况下,Git将长输出管道传输到所谓的寻呼机,如果输出不适合屏幕,则可以更容易地查看输出。 ~
字符表示这些行不在原始输出中,但它显示它们,以便您可以向下滚动到底部(即输出的最后一行可以到达屏幕顶部)。 / p>
您通常可以使用箭头键向上或向下滚动,也可以按q
退出。
或者,如果您不想在寻呼机中输出,请尝试以下方法:
$ git --no-pager hist --all
答案 1 :(得分:3)
取自git help config
core.pager The command that git will use to paginate output. Can be overridden with the GIT_PAGER environment variable. Note that git sets the LESS environment variable to FRSX if it is unset when it runs the pager. One can change these settings by setting the LESS variable to some other value. Alternately, these settings can be overridden on a project or global basis by setting the core.pager option. Setting core.pager has no affect on the LESS environment variable behaviour above, so if you want to override git’s default settings this way, you need to be explicit. For example, to disable the S option in a backward compatible manner, set core.pager to less -+$LESS -FRX. This will be passed to the shell by git, which will translate the final command to LESS=FRSX less -+FRSX -FRX.
完全跳过寻呼机:
git config --global core.pager cat
-F
的{{1}}标记很好,因为它告诉less
如果输出适合一页,则不会对输出进行分页。