[英]How to exit git log or git diff [duplicate]
我正在尝试在Git Immersion的帮助下学习 Git。
每当我使用git log
或git diff
时,有一件事让我感到沮丧:
当我遇到这个(END)
词时,我不知道下一步该怎么做。
我无法输入任何命令,我最终关闭了当前的 Bash 窗口并打开了另一个。 如何输入我想使用的下一个命令?
您在less
程序中,这使得git log
的输出可滚动。
键入q退出此屏幕。 键入h以获取帮助。
如果您不想在寻呼机中读取输出并希望将其打印到终端,请将环境变量GIT_PAGER
定义为cat
或将core.pager
设置为cat
(执行git config --global core.pager cat
)。
实际上,确切地说,有三种方法可以做到。
键入以下 3 个命令中的任何一个。
PS:有时,对于某些人来说,这些选项之一似乎不起作用,而对其他人却起作用。
您可以按q退出。
git hist
正在使用寻呼机工具,因此您可以在返回控制台之前上下滚动结果。
在 .bashrc 文件中添加以下别名
git --no-pager log --oneline -n 10
--no-pager
会遇到 (END) 字-n 10
将只显示最近 10 次提交--oneline
将显示提交信息,忽略作者、日期信息 END
来自用于显示日志的寻呼机(此时您仍在其中)。 键入q退出它。
我想对提到 CTRL + Z 作为选项的评论表示赞赏。 归根结底,这将取决于您安装了 Git 的系统以及配置为打开文本文件的程序(例如 less 与 vim)。 CTRL + Z 适用于 Windows 上的 vim。
如果您在 Windows 环境中使用 Git,则有一些怪癖。 只是有助于了解它们是什么。 (即记事本与 Nano 等)。
在这种情况下,正如 snarly 建议的那样,键入q是退出git log
的预期方式(与大多数其他寻呼机或使用寻呼机的应用程序一样)。
但是,通常情况下,如果您只想中止当前正在执行的命令,您可以尝试ctrl+c (不过似乎对git log
不起作用)或ctrl+z (尽管在bash 中, ctrl-z会冻结当前正在运行的前台进程,然后可以使用bg
命令将其解冻为后台进程)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.