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
可以使用编辑器完成类似的操作,但使用该选项时,必须取消设置更多环境变量。
关于git:显示默认/配置的寻呼机命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59940755/