Magit schieben / ziehen zeigen Fortschritt


14

Ich vermisse eine visuelle Anzeige des Push / Pull-Fortschritts. Nach Ausführung des entsprechenden Befehls wird magitgedruckt

Pushing zu domain.tld: repo.git

es wird jedoch kein weiterer Hinweis auf den Fortschritt gegeben. Bei einer langsamen Netzwerkverbindung oder wenn die zu übertragenden Daten groß sind, kann der Vorgang einige Zeit in Anspruch nehmen. Daher wäre es hilfreich, wenn Sie magitHinweise auf den Fortschritt geben könnten.

Natürlich *magit-process*enthält der Puffer eine giteigene Fortschrittsanzeige, aber wie können Sie festlegen magit, dass der betreffende Teil an den Echobereich weitergeleitet wird?

Noch besser wäre es, wenn die Fortschrittsanzeige in die Moduszeile eingefügt würde, sodass der Benutzer den magit-statusPuffer schließen und weiterarbeiten kann, während giter das schwere Heben ausführt.

Bearbeiten: Ich suche keine Anzeige, magitdie drückt / zieht, ich weiß das, weil ich gerade drücke P/ F. Ich möchte sehen, in welchem ​​Stadium des Drückens / Ziehens es sich befindet (dh, es wird gepackt, übertragen) und wie viel von dieser Aktion es bereits ausgeführt hat.

Denken Sie daran, wenn Sie gitdurch das Terminal laufen , wird so etwas wie gedruckt

Pushing zu domain.tld: repo.git
Objekte zählen: 29, erledigt.
Objekte schreiben: 100% (15/15), 249,80 KiB | 28.00 KiB / s, erledigt.
Insgesamt 15 (Delta 10), wiederverwendet 0 (Delta 0)
An domain.tld: repo.git
5436bd0..d9ec32a master -> master
aktualisiert die lokale Verfolgung ref 'refs / remotes / origin / master'

[Dies ist offensichtlich eine Momentaufnahme der dynamischen Ausgabe]. Ich möchte, dass der Fortschritt in Emacs angezeigt wird.

Edit2: Geöffnete Feature-Anfrage auf Github


Antworten:


7

Diese Funktion gibt es schon immer. Aber ich muss zugeben, dass ich das auch nie bemerkt habe und weiß es nur, weil ich über die Implementierung gestolpert bin :-)

Wenn ein asynchroner Prozess läuft, sehen Sie zB Magit git updatestatt nur Magitin der Mode-Zeile.


Ich sehe, dass ich nicht klar genug ausgedrückt habe, wonach ich suche. Bitte lesen Sie die Bearbeitung, die ich zu meinem Beitrag hinzugefügt habe.
Elemakil

Aha. Darf ich fragen, warum Sie wissen müssen, zu welchem ​​Zeitpunkt der Befehl ausgeführt wird?
Tarsius

3
Bitte öffnen Sie eine Funktionsanfrage.
Tarsius

4
Bitte beachten Sie, dass ich mich entschieden habe, die angeforderte Funktion nicht zu implementieren.
Tarsius

0

Obwohl es sich immer noch nicht um eine Fortschrittsanzeige handelt, sind die folgenden Verbesserungen in Magit 2.12 relevant:

  • Die Prozessanzeige in der Moduszeile, die in der Moduszeile angezeigt wird, wenn Git auf Nebenwirkungen hin ausgeführt wird, ist jetzt sichtbarer als zuvor und wird zusätzlich zum Hervorheben von Prozessfehlern verwendet.

    magit-mode-line-processDer Moduszeilen-Prozessindikator wird mit einer neuen Oberfläche versehen , um die Sichtbarkeit von ausstehenden asynchronen Prozessen (insbesondere) zu verbessern, da Magit nach dem Einleiten solcher Befehle (z. B. Abrufen oder erneutes Basieren) weiterhin reagiert, seine Puffer jedoch erst aktualisiert, wenn der Prozess abgeschlossen ist , was länger dauern könnte als erwartet. Passen Sie dieses Gesicht an, wenn Sie diesen Indikator mehr (oder weniger) sichtbar machen möchten. # 3284

    Wenn der Git-Prozess einen Fehler zurückgibt, wird die Anzeige für den Moduszeilenprozess nicht mehr entfernt und ein neues Gesicht magit-mode-line-process-error wird angewendet, um den Fehlerstatus hervorzuheben. Details des Fehlers aus dem Prozesspuffer werden ebenfalls als Tooltip bereitgestellt. Die Fehleranzeige bleibt in der Moduszeile sichtbar, bis ein Magit-Puffer aktualisiert wird. Wenn Sie nicht möchten, dass Fehler in der Moduszeile angezeigt werden, passen Sie die magit-process-display-mode-line-errorBenutzeroption an. # 3297

M-x customize-face RET magit-mode-line-process RET

Wenn Sie diesem Gesicht eine kontrastreiche Vordergrundfarbe geben, werden Sie feststellen, wann immer ein Git-Vorgang lange dauert.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.