在单独的终端屏幕上显示 git diff 和 git 日志输出
Displaying git diff and git log output on a separate terminal screen
设置新的开发环境后,我遇到了一个奇怪的 git 行为,我不记得过去见过。
我习惯于 git diff and git log
在终端中创建一个新屏幕并在其中显示它们的输出(默认情况下 less 所做的,我将其用作我的寻呼机)。
然后我可以退出并返回到我之前的终端状态,命令输出消失。然而,现在,输出直接打印到同一个屏幕上,就好像它是 cat(但带有寻呼机)。任何想法如何解决这一问题?在网上找不到任何信息。
更新:
通过将 core.pager
设置为 'less -+F -+X'
,能够在@torek 的帮助下解决此问题
检查 PAGER
环境变量。这控制了各种程序使用哪些工具来分页输出。
export PAGER=less
git diff
如果这对您有用,您可以根据您的操作系统以各种方式将其设置为永久环境变量。
您可能已将 less
设置为现在使用 -X
,而您之前将 less
设置为 而不是 使用 -X
.
参见 my answer to How to display output of `git branch` on-screen in same CLI terminal?。请注意,您可以选择使用哪个寻呼机,and/or 是否也可以使用寻呼机。 (好吧,你在问题中注意到了这一点。)
设置新的开发环境后,我遇到了一个奇怪的 git 行为,我不记得过去见过。
我习惯于 git diff and git log
在终端中创建一个新屏幕并在其中显示它们的输出(默认情况下 less 所做的,我将其用作我的寻呼机)。
然后我可以退出并返回到我之前的终端状态,命令输出消失。然而,现在,输出直接打印到同一个屏幕上,就好像它是 cat(但带有寻呼机)。任何想法如何解决这一问题?在网上找不到任何信息。
更新:
通过将 core.pager
设置为 'less -+F -+X'
检查 PAGER
环境变量。这控制了各种程序使用哪些工具来分页输出。
export PAGER=less
git diff
如果这对您有用,您可以根据您的操作系统以各种方式将其设置为永久环境变量。
您可能已将 less
设置为现在使用 -X
,而您之前将 less
设置为 而不是 使用 -X
.
参见 my answer to How to display output of `git branch` on-screen in same CLI terminal?。请注意,您可以选择使用哪个寻呼机,and/or 是否也可以使用寻呼机。 (好吧,你在问题中注意到了这一点。)