是否有一个命令行开关可以传递给gitdiff和其他默认使用较少寻呼机的命令?我知道这些方法存在:

git diff | cat。。。删除所有语法突出显示gitconfig--global core.pager cat将global.gitconfig中的寻呼机设置为cat导出GIT_PAGER=猫

但我更喜欢命令行开关。


当前回答

您还可以在全局配置中禁用/启用特定输出的寻呼机:

git config --global pager.diff false

或者要设置core.pager选项,只需提供一个空字符串:

git config --global core.pager ''

在我看来,这比你说的那样把它设置成猫要好。

其他回答

对于我写的一个快速而肮脏的脚本,我是这样做的:

PAGER=cat git diff ...

--Git的任何寻呼机都不会告诉它不要使用寻呼机。如果输出适合单个屏幕,则将选项-F传递给less将告诉它不要分页。

用法:

git --no-pager diff

评论中的其他选项包括:

# Set an evaporating environment variable to use 'cat' for your pager
GIT_PAGER=cat git diff

# Tells 'less' not to paginate if less than a page
export LESS="-F -X $LESS"
# ...then Git as usual
git diff

我的.gitconfig中有这个hunk,它似乎工作正常(diff和show都禁用):

[pager]
    diff = false
    show = false

对于Windows,它是:

git config --global core.pager ""

这将关闭git中所有内容的分页,包括git分支中的超级烦人的分页。

Use

git config --global core.pager cat

为所有存储库删除所有命令的寻呼机。

您还可以使用寻呼机禁用单个Git子命令的分页<cmd>setting而不是core.pager,并且您可以更改每个Git存储库的设置(省略--global)。

请参阅man git配置并搜索寻呼机<cmd>了解详细信息。