2013-01-27 8 views
15

Ich verwende Git Shell (das Modul für PowerShell) unter Windows. Es ist derjenige, der installiert wurde, als ich Git für Windows installierte. Wenn ich einen Befehl ausführe, der viel Text ergibt, zB git log, bekomme ich eine Ergebnisseite und dann ein ":" am unteren Bildschirmrand. Ich denke, es ist eine Fortsetzung Aufforderung, weil ich ENTER drücken und einen anderen Bildschirm von Daten erhalten. Normalerweise kann ich mich nach diesem Vorgang jedoch nicht normalisieren. Ich bekomme den Text (END) an der Unterseite der Shell und es sieht so aus, als ob es die ersten paar Zeichen von jedem Befehl maskiert, den ich versuche zu tippen, und es scheint sogar ein wenig sporadisch zu wirken. Ich kann es nicht herausfinden. Irgendwelche Ideen?Warum beenden lange Ergebnisse von Git-Befehlen meine PowerShell-Eingabeaufforderung?

+5

Drücken Sie die Taste 'Q' für Quit. Sie können dies tun, wenn Sie am Ende sind oder wenn Sie das ':' sehen. – vcsjones

+1

Im Übrigen können Sie in [posh-git (Powershell-Git)] (https://github.com/dahlbyk/posh-git) – vcsjones

+0

@vcsjones interessiert sein, danke. Ich musste meine Powershell-Konsole schließen. – Knox

Antwort

12

Einige der Git-Befehle verwenden einen Pager, damit Sie einen Bildschirm mit vielen Informationen gleichzeitig anzeigen können. Derjenige, der mit git kommt, ist normalerweise less (more info). Sie können den Link für allgemeine Befehle aufrufen, aber wie Sie am wichtigsten herausgefunden haben, ist q zu beenden, um zur Eingabeaufforderung zurückzukehren. Der nächste nützlichste, den ich gefunden habe, ist Raum, um zum nächsten Bildschirm voll zu gehen.

Sie können den verwendeten Pager im Feld core.pager der git config-Datei ändern.

+1

Sie können die Ergebnisse, die Sie von git log erhalten, auch einschränken, indem Sie den Befehl {git log --pretty = oneline} verwenden. – malgca

2

Dies ist eine alte Frage, aber ich dachte, ich würde erwähnen, dass git auch eine --no-Pager-Option für Sie zur Verfügung stellt.

git --no-pager log 

Hoffe, dass jemand hilft.

+0

Das ist neu für mich und ich weiß es zu schätzen. –

2

einfach an die vorhandenen Antworten, der normale „Fenster“ Pager hinzuzufügen ist more.com, die in der Regel von cmd als einfach more verwiesen wird, aber in PowerShell durch die Funktion more mit ähnlicher Funktionalität versteckt. Wenn Sie

git config --global core.pager more.com 

setzen, sollten Ihre Probleme weggehen (obwohl auf Kosten von Funktionen, die in weniger aber nicht mehr existieren).

Verwandte Themen