Magit spingendo / tirando mostra progressi


14

Mi manca qualche indicazione visiva del progresso push / pull. Dopo aver eseguito il comando appropriato, magitstampa

Invio a domain.tld: repo.git

tuttavia, non viene fornita alcuna ulteriore indicazione dei progressi. Su una connessione di rete lenta o se i dati da trasmettere sono di grandi dimensioni, il processo può richiedere del tempo, quindi sarebbe bello se magitpotesse dare qualche indicazione sui progressi.

Naturalmente il *magit-process*buffer contiene gitla propria indicazione di avanzamento ma come si dice magitdi passare la parte rilevante attraverso l'area dell'eco?

Ancora meglio sarebbe se l'indicatore di avanzamento viene aggiunto alla riga della modalità, consentendo così all'utente di chiudere il magit-statusbuffer e continuare a lavorare mentre gitsta facendo il sollevamento pesante.

Modifica: non sto cercando l'indicazione che magitsta spingendo / tirando, lo so perché ho appena premuto P/ F. Voglio vedere in quale fase di spingere / tirare è (cioè (disimballare), trasmettere) e quanta parte di quell'azione ha già fatto.

Ricorda, se corri gitattraverso il terminale stamperà qualcosa del genere

Invio a domain.tld: repo.git
Conteggio degli oggetti: 29, fatto.
Scrittura di oggetti: 100% (15/15), 249,80 KiB | 28,00 KiB / s, fatto.
Totale 15 (delta 10), riutilizzato 0 (delta 0)
A domain.tld: repo.git
5436bd0..d9ec32a master -> master che
aggiorna il riferimento di local tracking 'refs / remotes / origin / master'

[ovviamente questa è un'istantanea dell'output dinamico]. Vorrei che i progressi venissero visualizzati all'interno di Emacs.

Modifica2: richiesta di funzionalità aperta su github


Risposte:


7

Questa caratteristica esiste da sempre. Ma devo ammettere che non l'ho mai notato, e lo so solo perché mi sono imbattuto nell'implementazione :-)

Quando è in esecuzione un processo asincrono vedrai, ad esempio, Magit git updateinvece che solo Magitnella riga della modalità.


Vedo che non ho espresso abbastanza chiaramente ciò che sto cercando. Si prega di leggere la modifica che ho aggiunto al mio post.
elemakil,

Vedo. Posso chiederti perché devi sapere in quale fase è il comando?
tarsius

3
Si prega di aprire una richiesta di funzionalità.
tarsius

4
Si noti che ho deciso di non implementare la funzione richiesta.
tarsius,

0

Pur non essendo ancora un indicatore di progresso, sono rilevanti i seguenti miglioramenti in Magit 2.12:

  • L'indicatore di processo della riga di modalità, visualizzato nella riga di modalità quando Git viene eseguito per effetti collaterali, è ora più visibile di prima e viene inoltre utilizzato per evidenziare gli errori di processo.

    La nuova faccia magit-mode-line-processviene applicata all'indicatore di processo della linea di modalità per migliorare la visibilità dei processi asincroni in sospeso (in particolare), in quanto Magit rimane reattivo dopo aver avviato tali comandi (ad esempio recupero o ribassamento), ma non aggiornerà i suoi buffer fino al completamento del processo , che potrebbe richiedere più tempo del previsto. Personalizza questa faccia se desideri rendere questo indicatore più (o meno) visibile. # 3284

    Se il processo Git restituisce un errore, l'indicatore del processo della linea di modalità non viene più rimosso e magit-mode-line-process-error viene applicato un nuovo volto per evidenziare lo stato dell'errore. I dettagli dell'errore dal buffer di processo vengono forniti anche come una descrizione comandi. L'indicatore di errore rimarrà visibile nella riga della modalità finché non viene aggiornato un buffer magit. Se non si desidera che vengano indicati errori nella riga della modalità, personalizzare l' magit-process-display-mode-line-erroropzione utente. # 3297

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

Se dai a questa faccia un colore di primo piano ad alto contrasto, sei sicuro di notare ogni volta che un processo git richiede molto tempo per essere completato.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.