Comment quitter une liste 'git status' dans un terminal?

342

Je suis nouveau sur Git et le terminal. Comment quitter un mode listing généré par la git statuscommande?

Luis Martins
la source

Réponses:

503

Je dois deviner ici, mais git exécute probablement sa sortie dans votre programme $ PAGER, probablement lessou more. Dans les deux cas, la frappe qdevrait vous faire sortir.

Carl Smotricz
la source
10
Le pager utilisé par git est sélectionné par la core.pagervariable de configuration (si elle est définie), puis la variable d'environnement GIT_PAGER, puis la variable d'environnement PAGER, puis lesscomme solution de repli.
Jakub Narębski
2
Merci encore, La plupart du temps, je recommençais. Suis aussi un débutant ..
Sayari
4
Je vous remercie! C'était un cadeau de Zeus d'en haut. Vous venez de sauver mon cul une bonne heure de recherche sur Google.
Padawan
154
:q

c'est une commande moins , en fait. Il utilise les mêmes commandes que vi .

RageZ
la source
9
Si c'est moins, aucun signe deux-points (:) n'est nécessaire. Vous pensez si vi!
Carl Smotricz
2
Si vous obtenez l' erreur E37: Aucune écriture depuis la dernière modification (ajoutez! Pour remplacer) , faites ce qu'il dit et utilisez:q!
Noumenon
1
:qétait ce qu'il fallait pour moi, même si le terminal était à l'intérieur de less.exe juste q n'a rien fait. Merci @RageZ
Chris Marisic
tu m'as sauvé la vie.
AKJ
cela a fonctionné pour macOS
Kedar Sukerkar Il y a
106

Tapez «q» et il fera le travail.

Chaque fois que vous êtes au terminal et que vous avez une situation similaire à l'esprit, essayez également de taper «quitter», «quitter» ainsi que la combinaison de touches d'abandon «Ctrl + C».

allesklar
la source
4
J'utilisais 'Ctrl + Z' et je me suis retrouvé avec une tonne de processus git non terminés lorsque j'ai couru ps -ax. Ne savait pas q.
brokenindexfinger
3
Ctrl + Z met les tâches en arrière-plan, donc cela a du sens. Personnellement, je n'ai pas pu obtenir Ctrl + C pour le fermer. q fonctionne.
Amalgovinus
Ctrl + C et Ctrl + X n'ont pas fonctionné, seulement ont :qpu sortir pour moi.
Chris Marisic
J'ai tapé oui à une question qui m'a demandé de taper oui ou non. J'ai appuyé q, escet beaucoup d'autres touches et aucune d'entre elles n'a fonctionné jusqu'à ce que je puisse traverser CTRL + Cet cela m'a sorti de là!
Mohammed Mishal
15

Pour les fenêtres :

Ctrl + q et c pour quitter la situation en cours.

gem007bd
la source
13

qou SHIFT+ qfera l'affaire. Cela vous sortir d' un grand nombre de longues séances de défilement des pages comme git status, git show HEAD, git diffetc. Ce ne sera pas quitter votre fenêtre ou votre session.

Frontière soviétique
la source
7

Mon combo préféré est Gq, qui imprime tous les diffs puis se ferme.

Vous pouvez taper hpour afficher les commandes d'aide pour interagir avec less, ce qui l'imprime sur la console:

                   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
la source
5

tout d'abord, vous devez configurer les préférences de fin de ligne dans termnial

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

Ensuite, vous pouvez utiliser :q

Jamanius
la source
1
Une remarque pour les utilisateurs de Windows: Pour moi, l'ajout de ces lignes a entraîné l'impossibilité d'ajouter des fichiers au suivi (fatal: CRLF serait remplacé par LF dans README.md). Donc, si vous utilisez Windows, veuillez l'ajouter à la git config --global core.autocrlf trueplace, il fera l'affaire.
ConcurrentHashMap
4

Vous pouvez désactiver le pager pour les commandes qui ne reconnaissent pas l' --no-pagerindicateur.

git config --global pager.<command> false

Je désactive les alias de journal et définit une quantité spécifique à renvoyer.

git config --global pager.log false
James Morgan
la source
3

Avant d'appuyer sur les commandes de sortie (q, etc.), vérifiez la langue d'entrée actuelle: si ce n'est pas le cas, les commandes en anglais peuvent ne pas fonctionner.

papandreus
la source
3

Crt + c fonctionne pour Windows! user1852392

PythonLearner
la source
3

Veuillez essayer ces étapes dans git bash, cela peut vous aider.

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

Si vous êtes confronté à cela?

entrez la description de l'image ici Parfois, il est possible qu'en écrivant dans Gitbash vous entrez> et que vous ne puissiez pas en sortir.
Cela m'arrive assez souvent pendant que je tape par erreur dans Gitbash (voir dans l'image).

Comment résoudre ce problème sur Mac?

contrôle + C

Je ne l'ai pas vérifié dans Windows. Mais si c'est le cas, veuillez le modifier dans ma réponse.

Rohit Singh
la source
0

Si vous êtes sur le git bash, essayez d'utiliser exit;

J'ai essayé d'utiliser q ou ctrl + q mais ils n'ont pas fonctionné sur bash.

Govin
la source
-4

exitl'a fait pour moi. Mes résultats après avoir appuyé sur retour;

my-mac:Car Game mymac$ exit
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
    ...completed.
[Process completed]
Ronny Kibet
la source
cela revient à fermer la fenêtre entière, la question demande de quitter la session git comme dans ssh
yosemite_k