我最近开始在iTerm2上使用zsh
(oh-my-zsh,没有自定义)。但是,我在git log
或git show
中遇到了麻烦。
以前,例如,git log
结果只是终端的一部分,就像ls -l
结果一样。按git log
键退出q
后,结果将保留在终端屏幕中。我能够轻松地选择一些哈希id。
但是,目前的问题是git log
(或git show
)结果会取代屏幕。因此,在退出git log
后,终端会完全删除所有git
结果并返回原始屏幕。此行为类似于vim
。
即使使用bash
或Mac的默认终端应用,此行为也是相同的。这不是--no-pager
的问题。
任何帮助都将不胜感激。
答案 0 :(得分:3)
你可以尝试:
git config --global --replace-all core.pager "less -F -X"
来自"如何防止git diff使用寻呼机?":
将
-F
选项传递给less会导致它退出,如果内容少于一个屏幕,但是这样做后屏幕重置并且您最终看不到内容,-X
选项取消了该行为。
答案 1 :(得分:3)
oh-my-zsh使用less
标记执行-R
,您可以运行unset LESS
以回退到默认行为。