Git允许进行广泛的配置,其中一个值为core.pager
。如果未设置此值,则Git会在内部执行一些逻辑以自动确定寻呼机应该是什么。
core.pager
Text viewer for use by Git commands (e.g., less). The value is meant to be
interpreted by the shell. The order of preference is the $GIT_PAGER environment
variable, then core.pager configuration, then $PAGER, and then the default
chosen at compile time (usually less).
When the LESS environment variable is unset, Git sets it to FRX (if LESS
environment variable is set, Git does not change it at all). If you want to
selectively override Git's default setting for LESS, you can set core.pager to
e.g. less -S. This will be passed to the shell by Git, which will translate
the final command to LESS=FRX less -S. The environment does not set the S
option but the command line does, instructing less to truncate long lines.
Similarly, setting core.pager to less -+F will deactivate the F option
specified by the environment from the command-line, deactivating the "quit if
one screen" behavior of less. One can specifically activate some flags for
particular commands: for example, setting pager.blame to less -S enables line
truncation only for git blame.
Likewise, when the LV environment variable is unset, Git sets it to -c. You can
override this setting by exporting LV with another value or setting core.pager
to lv +c.
如果未配置core.pager
,是否有任何方法可以使Git发出用于寻呼机的命令字符串?
是,有些困难。如果只想查看该值,最简单的方法是使用git var --help
并在手册页中查看设置。例如,在Debian上,默认值为pager
。
如果您需要编程解决方案,则可以使用以下方法:
$ env -u HOME -u XDG_CONFIG_HOME -u PAGER -u GIT_PAGER GIT_DIR=/dev/null GIT_CONFIG_NOSYSTEM=1 git var GIT_PAGER
pager
类似的事情可以用编辑器完成,但是使用该选项,甚至有更多的环境变量必须取消设置。