繁体   English   中英

当显示“ git”命令结果时,禁用“缓冲视图”

[英]Disable “buffered view” when display 'git' commands results

我刚刚切换到新的(已配置)开发箱。

现在, git行为有所不同,其中包含一些命令。

让我尝试解释一下:

  • 之前 (在另一台机器上)键入git log我在终端中获取了提交列表。 因此,我可以随意向上滚动并复制/粘贴SHA。

  • 现在 (在新计算机上)在键入git log我在终端中获得了一个新缓冲区,在其中显示了提交。 现在,我必须按Q 退出/退出结果显示。 之后,缓冲区被清除,我回到终端,但是我没有任何记录/缓冲的结果。 所以我不能向上滚动查看命令的结果。

更明确地说,现在许多git命令( difflogreflogshow等)的行为类似于vimman ,其中命令的输出位于单独的缓冲区中,用户明确需要退出此视图才能返回到外壳

那是某种git配置吗? 也许是指定的默认编辑器? 还是手术系统设置?

我无法找到解决此问题的信息(或用于搜索信息的正确关键字)。

我希望这对其他人有用(并且使用非特定的搜索关键字更容易找到!)。 解决方案似乎是关于设置git寻呼机

分页器是用于显示git命令输出的命令。

就我而言,尝试运行:

git config -l

没有向我显示当前设置的任何证据。 但是,从以前的版本来我只是假设寻呼机默认值已更改为东西从不同的less最近。 对于新的寻呼机,按Q后将清除屏幕,不允许终端缓冲区保持输出结果。

无论如何,我对旧的寻呼机比较满意: less ,或者根本没有寻呼机。

所以我用命令重置它:

git config --global core.pager ''

这将不使用分页器,并且始终在外壳中显示输出,从而允许您向上滚动并复制/粘贴/检查git命令输出的任何部分。 但是用git log不好,因为它将向下滚动到列表的末尾并显示最近的提交。

因此,(对我而言)理想的解决方案是将其设置为less但另外,我还必须向其传递一些选项来定义所需的确切行为; 所以现在从顶部开始显示列表,然后可以向上滚动并查看输出的所有内容。

我使用的最终命令是:

git config --global core.pager 'less -FRSX'

(如本Atlassian文档页面的“ 更好的寻呼机默认值 ”部分中所述

这些设置的基本要素是-X ,可以防止清除屏幕。 -R允许保持彩色输出。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM