Pregunta ¿Por qué tengo que golpear q al final del registro de git


git log -n 20 --pretty=oneline

Le digo a git que necesito ver solo los últimos 20 commits. Odio presionar Q para deshacerme de END. Hay una salida para que no tenga que golpear q.


76
2018-03-02 16:56


origen


Respuestas:


Git está paginando automáticamente la salida por usted, ya que los registros tienden a desbordar fácilmente un tamaño de ventana de terminal único (usted está en una de las raras excepciones: un formato en línea y un límite de compromiso pequeño). Si no quieres esto, usa:

git --no-pager log -n 20 --pretty=oneline

Tenga en cuenta que esto significa que obtendrá un envoltorio feo, ya que el buscapersonas estaba apagándose previamente (ya que podría usar las teclas del cursor para desplazarse de izquierda a derecha).


78
2018-03-02 17:08



Puede "desactivar" la paginación de git diciéndole que use cat en lugar de menos. A partir de entonces, canalice la salida menos cuando desea paginación, o diríjase si solo desea ver la parte superior, etc.

git config --global core.pager cat

Apago la búsqueda automática porque a menudo ejecuto git desde emacs, que ni necesita ni funciona bien con menos.


22
2018-03-02 17:26



less acepta -F argumento para salir automáticamente si el contenido se ajusta a una pantalla


13
2018-03-02 17:36



git log -n 20 --pretty=oneline | cat

es un poco más corto que el --no-pager opción pero también eliminará cualquier color presente.


9
2018-03-02 17:10



Si quieres usar --no-pager en un alias, configure su alias de esta manera:

hist = !git --no-pager log --pretty=format:\"%h %ad | %s%d [%an]\" --graph --date=short

8
2017-12-05 15:23



el q se usa para cerrar el programa de línea de comando usado para ver los registros ... puede usar otro visor de registro como gitk

gitk -n 20

0
2018-03-02 17:05