¿Cómo salir de una lista de 'estado de git' en una terminal?

340

Soy nuevo en Git y la terminal. ¿Cómo puedo salir de un modo de listado generado por el git statuscomando?

Luis Martins
fuente

Respuestas:

501

Tengo que adivinar aquí, pero git probablemente esté ejecutando su salida en su programa $ PAGER, probablemente lesso more. En cualquier caso, escribir qdebería sacarte.

Carl Smotricz
fuente
10
El localizador utilizado por git se selecciona por la core.pagervariable de configuración (si está configurado), luego la variable de entorno GIT_PAGER, luego la variable de entorno PAGER y luego lesscomo reserva.
Jakub Narębski el
2
Gracias de nuevo, la mayoría de las veces solía comenzar de nuevo. También soy un novato ..
Sayari
44
¡Gracias! Este fue un regalo de Zeus en lo alto. Acabas de salvarme el culo una buena hora de Google.
Padawan
152
:q

ese es un comando menos , en realidad. Utiliza los mismos comandos que vi .

RageZ
fuente
99
Si es menor, entonces no se necesitan dos puntos (:). Estás pensando si vi!
Carl Smotricz
2
Si obtiene el error E37: No escribir desde el último cambio (¡agregar! Para anular) , haga lo que dice y use:q!
Noumenon
1
:qfue lo que necesité para mí aunque el terminal estaba dentro de less.exe solo q no hizo nada Gracias @RageZ
Chris Marisic
me salvaste la vida.
AKJ
106

Escriba 'q' y hará el trabajo.

Siempre que esté en la terminal y tenga una situación similar, tenga en cuenta también que intente escribir 'salir', 'salir' y la combinación de teclas de cancelación 'Ctrl + C'.

allesklar
fuente
44
Estaba usando 'Ctrl + Z' y terminé con una tonelada de procesos git sin terminar cuando corrí ps -ax. No sabía sobre q.
brokenindexfinger
3
Ctrl + Z pone las tareas en segundo plano, por lo que tiene sentido. Personalmente no pude hacer que Ctrl + C lo cerrara. q funciona.
Amalgovinus
Ctrl + C y Ctrl + X tampoco funcionaron, solo :qpudieron salir por mí.
Chris Marisic
Escribí sí a una pregunta que me pedía que escribiera sí o no. Presioné q, ¡ escy muchas otras teclas y ninguna de ellas funcionó hasta que pude cruzar CTRL + Cy me sacó de allí!
Mohammed Mishal
15

para ventanas :

Ctrl + q y c para salir de la situación de ejecución.

gem007bd
fuente
13

qo SHIFT+ qhará el truco. Esto le dará a cabo de muchas sesiones de la página de desplazamiento extensas como git status, git show HEAD, git diffetc. Esto no va a salir de su ventana o finalizar la sesión.

Frente soviético
fuente
7

Mi combinación preferida es Gq, que imprime todas las diferencias y luego sale.

Puede escribir hpara mostrar los comandos de ayuda para interactuar con less, que imprime esto en la consola:

                   SUMMARY OF LESS COMMANDS

      Commands marked with * may be preceded by a number, N.
      Notes in parentheses indicate the behavior if N is given.

  h  H                 Display this help.
  q  :q  Q  :Q  ZZ     Exit.
 ---------------------------------------------------------------------------

                           MOVING

  e  ^E  j  ^N  CR  *  Forward  one line   (or N lines).
  y  ^Y  k  ^K  ^P  *  Backward one line   (or N lines).
  f  ^F  ^V  SPACE  *  Forward  one window (or N lines).
  b  ^B  ESC-v      *  Backward one window (or N lines).
  z                 *  Forward  one window (and set window to N).
  w                 *  Backward one window (and set window to N).
  ESC-SPACE         *  Forward  one window, but don't stop at end-of-file.
  d  ^D             *  Forward  one half-window (and set half-window to N).
  u  ^U             *  Backward one half-window (and set half-window to N).
  ESC-)  RightArrow *  Left  one half screen width (or N positions).
  ESC-(  LeftArrow  *  Right one half screen width (or N positions).
  F                    Forward forever; like "tail -f".
  r  ^R  ^L            Repaint screen.
  R                    Repaint screen, discarding buffered input.
        ---------------------------------------------------
        Default "window" is the screen height.
        Default "half-window" is half of the screen height.
 ---------------------------------------------------------------------------

                          SEARCHING

  /pattern          *  Search forward for (N-th) matching line.
  ?pattern          *  Search backward for (N-th) matching line.
  n                 *  Repeat previous search (for N-th occurrence).
  N                 *  Repeat previous search in reverse direction.
  ESC-n             *  Repeat previous search, spanning files.
  ESC-N             *  Repeat previous search, reverse dir. & spanning files.
  ESC-u                Undo (toggle) search highlighting.
        ---------------------------------------------------
        Search patterns may be modified by one or more of:
        ^N or !  Search for NON-matching lines.
        ^E or *  Search multiple files (pass thru END OF FILE).
        ^F or @  Start search at FIRST file (for /) or last file (for ?).
        ^K       Highlight matches, but don't move (KEEP position).
        ^R       Don't use REGULAR EXPRESSIONS.
 ---------------------------------------------------------------------------

                           JUMPING

  g  <  ESC-<       *  Go to first line in file (or line N).
  G  >  ESC->       *  Go to last line in file (or line N).
  p  %              *  Go to beginning of file (or N percent into file).
  t                 *  Go to the (N-th) next tag.
  T                 *  Go to the (N-th) previous tag.
  {  (  [           *  Find close bracket } ) ].
  }  )  ]           *  Find open bracket { ( [.
  ESC-^F <c1> <c2>  *  Find close bracket <c2>.
  ESC-^B <c1> <c2>  *  Find open bracket <c1> 
        ---------------------------------------------------
Blake Regalia
fuente
5

En primer lugar, debe configurar las preferencias de finalización de línea en términos anuales

git config --global core.autocrlf input
git config --global core.safecrlf true

Entonces puedes usar :q

Jamanius
fuente
1
Una nota para los usuarios de Windows: para mí, agregar estas líneas resultó en la imposibilidad de agregar archivos al seguimiento (fatal: CRLF sería reemplazado por LF en README.md). Entonces, si está utilizando Windows, agregue en su git config --global core.autocrlf truelugar, hará el trabajo.
ConcurrentHashMap
4

Puede deshabilitar el buscapersonas para comandos que no reconocen la --no-pagermarca.

git config --global pager.<command> false

Desactivo para los alias de registro y establezco una cantidad específica para devolver.

git config --global pager.log false
James Morgan
fuente
3

Antes de presionar los comandos de salida (q, etc.) verifique el idioma de entrada actual: si no es inglés, los comandos pueden no funcionar.

papandreus
fuente
3

¡Crt + c funciona para Windows! usuario1852392

PythonLearner
fuente
3

Intenta estos pasos en git bash, puede ayudarte.

  1. CTRL + C
  2. :qa!
Md. Rejaul Karim
fuente
1

Si te enfrentas a esto?

ingrese la descripción de la imagen aquí A veces es posible que al escribir en Gitbash te metas en> y simplemente no puedas salir de eso.
Ocurre conmigo con bastante frecuencia mientras escribo 'por error en Gitbash (ver en la imagen).

¿Cómo resolver esto en Mac?

control + C

No lo he comprobado en Windows. Pero si lo hace, edítelo en mi respuesta.

Rohit Singh
fuente
0

Si estás en git bash, intenta usar exit;

Intenté usar q o ctrl + q pero no funcionaron en bash.

Govin
fuente
-4

exitLo hice por mí. Mis resultados después de presionar volver;

my-mac:Car Game mymac$ exit
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
    ...completed.
[Process completed]
Ronny Kibet
fuente
esto es lo mismo que cerrar toda la ventana, la pregunta pide salir de la sesión de git como en ssh
yosemite_k