Wie füge ich –no-pager in einen Git-Alias ​​ein?

Lesezeit: 2 Minuten

Benutzeravatar von Ian
Jan

Ich habe einen Git-Alias ​​basierend auf dem erstellt Git Immersion Tutorial von EdgeCase, das so aussieht:

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

Aber jetzt scheint es die Ergebnisse auszulagern – Terminal zeigt (END) nachdem die Ergebnisse angezeigt werden, zwingt mich zu schlagen Q weiter zu arbeiten. Ich habe das gelesen, indem ich die hinzugefügt habe --no-pager Tag können Sie diese Funktion deaktivieren; Wie kann ich es in den Alias ​​einbauen? Ich habe es am Ende versucht, vor dem log, und direkt danach, und keiner von ihnen hat funktioniert. Git gibt einen Fehler aus, der besagt, dass es sich um ein nicht erkanntes Argument handelt oder dass Umgebungsvariablen geändert werden. Irgendein Rat?

  • Das will man aber wirklich nicht. Sobald Sie ein Git-Projekt mit einem beträchtlichen Verlauf verwenden, wird das Protokoll sehr lang.

    – asmeurer

    10. Juli 2013 um 4:20 Uhr

Benutzeravatar von Cascabel
Cascabel

Sie können das ganz einfach tun, indem Sie es einfach in einen Shell-Befehl umwandeln:

hist = "!git --no-pager log ..."

  • Entschuldigung für den Titel, mein Fehler. Danke aber für die Hilfe!

    – Jan

    23. Februar 2011 um 3:11 Uhr

Hinweis: Mit Git 2.18 (Q2 2018) kann der Alias ​​eine kürzere Option für verwenden --no-pager:
git --no-pager cmd” hatte keine kurz und bündige Option für einzelne Buchstaben. Jetzt tut es das.

Der Alias ​​kann nun lauten:

hist = "!git -P log ..."

Sehen 7213c28 übergeben (03. Mai 2018) von Johannes Sixt (j6t).
(Zusammengeführt von Junio ​​C. Hamano — gitster in c9aac55 übergeben23. Mai 2018)

git: hinzufügen -P als kurze Option für --no-pager

Es ist möglich, ‘less‘, der Pager, um einen alternativen Bildschirm zu verwenden, um den Inhalt anzuzeigen, beispielsweise durch Einstellung LESS=RS in der Umwelt.
Wenn es in dieser Konfiguration geschlossen wird, wechselt es zurück zum ursprünglichen Bildschirm, und alle Inhalte sind weg.

Nicht selten wird verlangt, dass die Ausgabe im Terminal sichtbar bleibt. Dazu die Option --no-pager kann verwendet werden.
Aber es ist etwas umständlich zu tippen, selbst wenn die Befehlsvervollständigung verfügbar ist.
Geben Sie eine kurze Option an, -Pum die Option leichter zugänglich zu machen.

  • in Skripten würde ich es vorziehen, es aufzuschreiben, um es leichter verständlich zu machen. Bei der Verwendung auf der CLI ist dies natürlich weiterhin sinnvoll.

    – xeruf

    3. Juni 2020 um 13:35 Uhr

  • @Xerus Ich stimme zu: nein für Skript, ja für CLI.

    – VonC

    3. Juni 2020 um 13:37 Uhr

Benutzeravatar von Vivek Karimbil
Vivek Karimbil

Die Option –no-pager gibt eine unrecognized option Fehler bei Verwendung danach logaber es funktionierte, indem –no-pager vor log – “git –no-pager log …. ” gesetzt wurde

  • Teillösung ist nett – bei diesem Ansatz verwendet Git keinen Pager für den angegebenen Befehl. Es bricht jedoch vorzeitig mit zwei weiteren Meldungen ab… #1 – Fehler: Warnung: Erschöpfende Umbenennungserkennung wurde aufgrund zu vieler Dateien übersprungen. #2 – Warnung: Sie sollten Ihre diff.renameLimit-Variable auf mindestens 3072 setzen und den Befehl wiederholen.

    – Kai v

    6. Januar 2022 um 19:16 Uhr

1439270cookie-checkWie füge ich –no-pager in einen Git-Alias ​​ein?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy