什么是Git';s命令行diff和日志查看器?

什么是Git';s命令行diff和日志查看器?,git,git-diff,git-log,Git,Git Diff,Git Log,在终端中调用git log或git diff时,使用某种查看器显示结果。我知道如何导航、退出和搜索关键词,但我想了解一些我实际在做什么的背景知识。此查看器的名称是什么?此查看器记录在哪里 我知道编辑器会转到我的默认文本编辑器,但这个“查看器”似乎是其他东西。我已经找了一段时间了,但我不确定我是否使用了正确的关键字进行搜索。git的默认查看器是。通过设置code.pagerconfig值,可以将其更改为其他内容(例如,more)。例如: $ git config --global core.pag

在终端中调用
git log
git diff
时,使用某种查看器显示结果。我知道如何导航、退出和搜索关键词,但我想了解一些我实际在做什么的背景知识。此查看器的名称是什么?此查看器记录在哪里


我知道编辑器会转到我的默认文本编辑器,但这个“查看器”似乎是其他东西。我已经找了一段时间了,但我不确定我是否使用了正确的关键字进行搜索。

git的默认查看器是。通过设置
code.pager
config值,可以将其更改为其他内容(例如,
more
)。例如:

$ git config --global core.pager more

您可以在中找到更多信息。

git使用
less
对于默认查看器,您可以查看如何在其中搜索。

默认查看器是
less

core.pager

Git命令使用的文本查看器(例如,less)。该值将由shell解释。首选顺序是
$GIT_PAGER
环境变量,然后是
core.PAGER
配置,然后是
$PAGER
,然后是编译时选择的默认值(通常较少)

LESS
环境变量未设置时,Git将其设置为
FRX
(如果设置了
LESS
环境变量,Git根本不会更改它)。如果要有选择地覆盖Git对
LESS
的默认设置,可以将
core.pager
设置为例如
LESS-s
。这将由Git传递给shell,它将最终命令转换为
LESS=FRX-LESS-S
。环境不设置
S
选项,但命令行设置,指示less截断长行。类似地,将
core.pager
设置为
less-+F
将停用环境从命令行指定的
F
选项,停用
less
的“如果一个屏幕退出”行为。可以专门为特定命令激活一些标志:例如,将
pager.gurn
设置为
less-S
仅为git gurn启用行截断

同样,当
LV
环境变量未设置时,Git将其设置为
-c
。您可以通过使用另一个值导出
LV
或将
core.pager
设置为
LV+c
来覆盖此设置


它使用您的默认寻呼机。“less”是一个改进的“more”,允许您在显示的文本上滚动,不建议将
less
替换为
more
IMHO。@gzh我只是给出了
more
作为一个可以使用的寻呼机示例,只是为了展示
core.pager
config值是如何工作的。我同意这不是一个很好的选择。你能推荐一个更好的例子吗?对我来说,少一点就足够了,在EOL上有滚动、语法高亮和空白警告颜色,几乎安装在每台linux PC上,我不想改变它。对于复杂的差异和比较,我想求助于
git difftool
@Mureinik谢谢你,我在这个文档页面上,但有些不知所措
core.pager
为我解决了这个问题,我将更多地阅读
less
。pager正是我要找的词,谢谢!