今天在mobaxterm
中使用git
的时候,发现不管是敲一些命令,比如git branch -av
或git log
,终端的左下角都显示standard input
, 必须按下q
才会退出并进入终端?
在网上一番查找,参考这个终于找到原因https://www.jianshu.com/p/2157b59b45e7
原因:
- 当前版本默认设置了
GIT_PAGER
的环境变量为busybox less -R
解决方案:
- 不想这样的话,可以在自己的
bash
初始化脚本中unset GIT_PAGER
- 然后可以在自己的
~/.gitconfig
配置文件中使用pager=cat
(完成参数名为core.pager=cat)
继续查找+尝试:
- 首先,
git branch -av
或git log
,终端的左下角都显示standard input
, 必须按下q
才会退出并进入终端,这种模式是git
进入了pager
传呼机模式,git config --global core.pager cat
可以对所有git
命令关掉这种模式。 - 但是我直接运行以上命令是没有改变的,用
set | grep -i GIT_PAGER
查看,确实GIT_PAGER
是被设成了busybox less -R
。 - 在
.bashrc
文件中加上unset GIT_PAGER
命令,source
一下,问题解决了。
总结:
git
的pager
模式git config --global core.pager cat
set
,显示所有环境变量set | grep -i env_var
,查看是否有某个环境变量unset env_var
,删除指定环境变量