wake-up-neo.com

So beenden Sie git log oder git diff

Ich versuche mit Hilfe von Git Immersion Git zu lernen. Es gibt eine Sache, die mich frustriert, wenn ich git log oder git diff verwende:

Git log shows (END) marker

Ich kann nicht herausfinden, was ich als nächstes tun soll, wenn ich auf dieses (END) Wort stoße. Ich kann keine Befehle eingeben und schließe am Ende das aktuelle Bash-Fenster und öffne ein anderes. Wie gebe ich den nächsten Befehl ein, den ich verwenden möchte?

729
Wern Ancheta

Sie befinden sich im Programm less, das die Ausgabe von git log scrollbar macht.

Art q um diesen Bildschirm zu verlassen. Art h Hilfe holen.

Wenn Sie die Ausgabe nicht in einem Pager lesen und nur auf dem Terminal drucken möchten, definieren Sie die Umgebungsvariable GIT_PAGER auf cat oder setzen Sie core.pager auf cat (git config --global core.pager cat ausführen).

1086
Fred Foo

Sie können drücken q beenden.

git hist verwendet ein Pager-Tool, mit dem Sie die Ergebnisse nach oben und unten scrollen können, bevor Sie zur Konsole zurückkehren.

36
seanhodges

Fügen Sie folgenden Alias ​​in die .bashrc-Datei ein

git --no-pager log --oneline -n 10
  • --no-pager trifft auf das (END) Word
  • -n 10 zeigt nur die letzten 10 Commits an
  • --oneline zeigt die Festschreibungsmeldung an, ignoriert den Autor und die Datumsangaben
30
J4cK

Das END kommt von dem Pager, der zum Anzeigen des Protokolls verwendet wird (Sie befinden sich in diesem Moment noch darin). Art q um es zu verlassen.

29

Tatsächlich gibt es drei Möglichkeiten, genau das zu tun.

Geben Sie einen der folgenden 3 Befehle ein.

  1. :q
  2. :z oder
  3. Ctrl + z

P .: Manchmal scheint für jemanden eine dieser Optionen nicht zu funktionieren und für andere funktioniert sie.

26
shrexchauhan

Ich wollte dem Kommentar, in dem STRG + Z als Option erwähnt wurde, ein Lob aussprechen. Letztendlich hängt es davon ab, auf welchem ​​System Git installiert ist und welches Programm zum Öffnen von Textdateien konfiguriert ist (z. B. less vs. vim). STRG + Z funktioniert für vim unter Windows.

Wenn Sie Git in einer Windows-Umgebung verwenden, gibt es einige Macken. Hilft nur zu wissen, was sie sind. (d. h. Notepad vs. Nano usw.).

8
Jeremy

In diesem Fall tippen Sie, wie knapp angedeutet, ein q ist die beabsichtigte Methode zum Beenden von git log (wie bei den meisten anderen Pagern oder Anwendungen, die Pager verwenden).

Wenn Sie jedoch nur einen Befehl abbrechen möchten, der gerade ausgeführt wird, können Sie dies normalerweise versuchen ctrl+c (scheint jedoch nicht für git log zu funktionieren) oder ctrl+z (obwohl in bashctrl-z friert den aktuell ausgeführten Vordergrundprozess ein, der dann mit dem Befehl bg als Hintergrundprozess aufgetaut werden kann.

3
HelloGoodbye