在显示 'git' 命令结果时禁用 "buffered view"
Disable "buffered view" when display 'git' commands results
我刚刚切换到一个新的(已经配置好的)开发盒。
现在 git
行为有所不同,有一些命令。
让我试着解释一下:
before(在另一台机器上)输入 git log
时,我正在终端中获取提交列表。所以我可以向上滚动并根据需要多次 copy/past SHA。
now(在新机器上)输入 git log
时,我在终端中得到一个新缓冲区,其中显示了提交. 现在我必须exit/quit结果显示按Q。
之后缓冲区被清除,我回到终端,但我 没有 有任何 logged/buffered 结果;所以我不能向上滚动查看命令的结果。
更清楚地说,现在许多 git
命令(diff
、log
、reflog
、show
等)的行为类似于 vim
或 man
,其中命令的输出位于单独的缓冲区中,用户 明确需要退出此视图才能返回 shell .
这是某种 git
配置吗?也许是指定的默认编辑器?或者也许是操作系统设置?
我找不到解决此问题的信息(或搜索信息的正确关键字)。
我希望这对其他人有用(使用非特定搜索关键字更容易找到!)。
解决方案似乎是关于设置 pager of git
.
寻呼机是用于显示 git
命令输出的命令。
在我的例子中试图 运行:
git config -l
没有向我展示当前设置的任何证据。但是从以前的版本来看,我只是假设寻呼机的 默认值最近已更改 为与 less
不同的值。
使用新的寻呼机,在按下 Q 后屏幕会被清除,不允许终端缓冲区保持输出结果。
无论如何,我对旧寻呼机更舒服:less
,或者根本没有寻呼机。
所以我用命令重置它:
git config --global core.pager ''
这将使用 无分页器 并将始终在 shell 中显示输出,允许您向上滚动和 copy/paste/check git
命令输出。
但是 git log
并不好,因为它会向下滚动到列表的末尾并显示最近的提交。
所以完美的解决方案(对我来说)是将它设置为 less
,但是另外 我必须向它传递一些选项来定义确切的期望行为;所以现在我从顶部显示列表,然后我可以向上滚动并查看我输出的所有内容。
我最后使用的命令是:
git config --global core.pager 'less -FRSX'
(解释为 on the section Better pager defaults of this Atlassian documentation page)
这些设置的基本原理是 -X
防止屏幕被清除。虽然 -R
允许保持彩色输出。
我刚刚切换到一个新的(已经配置好的)开发盒。
现在 git
行为有所不同,有一些命令。
让我试着解释一下:
before(在另一台机器上)输入
git log
时,我正在终端中获取提交列表。所以我可以向上滚动并根据需要多次 copy/past SHA。now(在新机器上)输入
git log
时,我在终端中得到一个新缓冲区,其中显示了提交. 现在我必须exit/quit结果显示按Q。 之后缓冲区被清除,我回到终端,但我 没有 有任何 logged/buffered 结果;所以我不能向上滚动查看命令的结果。
更清楚地说,现在许多 git
命令(diff
、log
、reflog
、show
等)的行为类似于 vim
或 man
,其中命令的输出位于单独的缓冲区中,用户 明确需要退出此视图才能返回 shell .
这是某种 git
配置吗?也许是指定的默认编辑器?或者也许是操作系统设置?
我找不到解决此问题的信息(或搜索信息的正确关键字)。
我希望这对其他人有用(使用非特定搜索关键字更容易找到!)。
解决方案似乎是关于设置 pager of git
.
寻呼机是用于显示 git
命令输出的命令。
在我的例子中试图 运行:
git config -l
没有向我展示当前设置的任何证据。但是从以前的版本来看,我只是假设寻呼机的 默认值最近已更改 为与 less
不同的值。
使用新的寻呼机,在按下 Q 后屏幕会被清除,不允许终端缓冲区保持输出结果。
无论如何,我对旧寻呼机更舒服:less
,或者根本没有寻呼机。
所以我用命令重置它:
git config --global core.pager ''
这将使用 无分页器 并将始终在 shell 中显示输出,允许您向上滚动和 copy/paste/check git
命令输出。
但是 git log
并不好,因为它会向下滚动到列表的末尾并显示最近的提交。
所以完美的解决方案(对我来说)是将它设置为 less
,但是另外 我必须向它传递一些选项来定义确切的期望行为;所以现在我从顶部显示列表,然后我可以向上滚动并查看我输出的所有内容。
我最后使用的命令是:
git config --global core.pager 'less -FRSX'
(解释为 on the section Better pager defaults of this Atlassian documentation page)
这些设置的基本原理是 -X
防止屏幕被清除。虽然 -R
允许保持彩色输出。