如何防止git diff使用寻呼机?是否有一个命令行开关传递给默认情况下git diff使用less寻呼机的其他命令?我知道我可以将它传递给cat,但这会删除所有语法高亮显示。我知道我可以将全局.gitconfig中的寻呼机设置为cat by GITPAGER=cat(或类似的东西); 但我想有时候有寻呼机(取决于差异的大小)。但是,如果有的话,我更喜欢命令行开关; 我无法找到一个,通过手册页。
3 回答
潇湘沐
TA贡献1816条经验 获得超6个赞
--no-pager到git会告诉它不要使用寻呼机。将选项传递-F给less会告诉它如果输出适合单个屏幕则不会页面。
用法:
git --no-pager diff
评论中的其他选项包括:
# set an evaporating environment variable to use cat for your pager
GIT_PAGER=cat git diff
# tell less not to paginate if less than a page
export LESS="-F -X $LESS"
# ...then git as usual
git diff
喵喔喔
TA贡献1735条经验 获得超5个赞
如前所述,-F
如果内容少于一个屏幕,则将选项传递给less会导致其退出,但是在这样做之后屏幕重置并且您最终看不到内容,该-X
选项会消除该行为。因此,我使用以下内容根据内容量启用条件分页:
git config --global --replace-all core.pager "less -F -X"
心有法竹
TA贡献1866条经验 获得超5个赞
使用
git config --global core.pager cat
为所有存储库的所有命令摆脱寻呼机。
您还可以通过使用pager.<cmd>
设置而不是core.pager
您的单个git子命令来禁用分页,并且您可以更改每个git存储库的设置(省略--global
)。
查看man git-config
并搜索pager.<cmd>
详细信息。
- 3 回答
- 0 关注
- 568 浏览
添加回答
举报
0/150
提交
取消