git:显示默认/配置的寻呼机命令

Posted

技术标签:

【中文标题】git:显示默认/配置的寻呼机命令【英文标题】:git: Show default / configured pager command 【发布时间】:2020-01-28 00:27:05 【问题描述】:

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 发出它将用于寻呼机的命令字符串?

【问题讨论】:

【参考方案1】:

是的,有一些困难。如果您只想查看值,最简单的方法是使用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:显示默认/配置的寻呼机命令的主要内容,如果未能解决你的问题,请参考以下文章

Orchard CMS 默认寻呼机问题

如何为 MySQL 客户端设置默认寻呼机?

Git 配置

vscode (v1.57.0) 配置默认终端为git bash

git 没有特定命令的寻呼机

git命令行的颜色配置