这个问题在这里已有答案:
我想在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
)。
您可以按q退出。
git hist
正在使用寻呼机工具,因此您可以在返回控制台之前向上和向下滚动结果。
END
来自用于显示日志的寻呼机(您当时仍在其中)。输入q退出它。
在.bashrc文件中添加以下别名
git --no-pager log --oneline -n 10
--no-pager
将遇到(END)字-n 10
将仅显示最近10次提交--oneline
将显示提交消息,忽略作者,日期信息实际上,有三种方法可以做到。
键入以下3个命令中的任何一个。
P.S。:有时,对于某些人来说,这些选项中的一个似乎不起作用,而对于其他人来说,它起作用。
我想对提到CTRL + Z作为选项的评论给予一些赞誉。在一天结束时,它将取决于您安装Git的系统以及配置为打开文本文件的程序(例如,较少与vim相比)。 CTRL + Z适用于Windows上的vim。
如果你在Windows环境中使用Git,那就有一些怪癖。只是有助于了解它们是什么。 (即Notepad vs. Nano等)。
在这种情况下,正如snarly建议的那样,输入q是退出git log
的预期方式(与大多数其他寻呼机或使用寻呼机的应用程序一样)。
但通常情况下,如果你只是想中止当前正在执行的命令,你可以尝试ctrl + c(但似乎不适用于git log
)或ctrl + z(尽管在bash中,ctrl-z会冻结当前运行前台进程,然后可以使用bg
命令将其解冻为后台进程)。