Magit empurrando / puxando mostra o progresso

14

Faltam algumas indicações visuais do progresso de push / pull. Após executar o comando apropriado, magitimprime

Enviar para domain.tld: repo.git

no entanto, nenhuma indicação adicional do progresso é fornecida. Em uma conexão de rede lenta ou se os dados a serem transmitidos forem grandes, o processo pode demorar algum tempo; portanto, seria bom se magitdesse alguma indicação de progresso.

Naturalmente, o *magit-process*buffer contém gita própria indicação de progresso, mas como você diz magitpara passar a parte relevante para a área de eco?

Melhor ainda seria se o indicador de progresso fosse adicionado à linha de modo, permitindo ao usuário fechar o magit-statusbuffer e continuar trabalhando enquanto gitfaz o trabalho pesado.

Edit: Eu não estou procurando por indicação que magitestá empurrando / puxando, eu sei disso porque eu apenas apertei P/ F. Eu quero ver em que estágio de empurrar / puxar está (ou seja, (des) empacotando, transmitindo) e quanto dessa ação já foi executada.

Lembre-se, se você percorrer gito terminal, ele imprimirá algo como

Pressionando para domain.tld: repo.git
Contando objetos: 29, pronto.
Escrevendo objetos: 100% (15/15), 249,80 KiB | 28,00 KiB / s, concluído.
Total 15 (delta 10), reutilizado 0 (delta 0)
Para domain.tld: repo.git
5436bd0..d9ec32a mestre -> mestre
atualizando o rastreamento local ref 'refs / remotes / origin / master'

[obviamente, este é um instantâneo da saída dinâmica]. Gostaria que esse progresso fosse exibido no emacs.

Edit2: Pedido de recurso aberto no github

elemakil
fonte

Respostas:

7

Esse recurso existe para sempre. Mas tenho que admitir que também nunca notei isso e só sei disso porque me deparei com a implementação :-)

Quando um processo assíncrono estiver em execução, você verá, por exemplo, em Magit git updatevez de apenas Magitna linha de modo.

tarso
fonte
Vejo que não expressei com clareza o que estou procurando. Leia a edição que adicionei à minha postagem.
elemakil
Entendo. Posso perguntar por que você precisa saber em que estágio está o comando?
tarsius
3
Por favor, abra uma solicitação de recurso.
tarsius
4
Observe que eu decidi não implementar o recurso solicitado.
tarsius 30/12/2015
0

Embora ainda não seja um indicador de progresso, os seguintes aprimoramentos no Magit 2.12 são relevantes:

  • O indicador de processo da linha de modo, exibido na linha de modo quando o Git é executado para efeitos colaterais, agora está mais visível do que antes e também é usado para destacar erros de processo.

    Uma nova face magit-mode-line-processé aplicada ao indicador de processo da linha de modo para melhorar a visibilidade de processos assíncronos pendentes (em particular), pois o Magit permanece responsivo após o início de tais comandos (por exemplo, buscando ou rebatizando), mas não atualiza seus buffers até que o processo seja concluído , o que pode levar mais tempo do que o previsto. Personalize esse rosto se desejar tornar esse indicador mais (ou menos) visível. # 3284

    Se o processo Git retornar um erro, o indicador de processo da linha de modo não será mais removido e uma nova face magit-mode-line-process-error será aplicada para destacar o status do erro. Detalhes do erro do buffer do processo também são fornecidos como uma dica de ferramenta. O indicador de erro permanecerá visível na linha de modo até que um buffer magit seja atualizado. Se você não deseja que os erros sejam indicados na linha de modo, personalize a magit-process-display-mode-line-erroropção do usuário. # 3297

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

Se você der a esse rosto uma cor de primeiro plano de alto contraste, certamente notará sempre que um processo git estiver demorando muito tempo para ser concluído.

phils
fonte