Se lavorate con Git e vi piace usare Emacs , la seguente applicazione potrebbe interessarvi. L'applicazione di cui parleremo oggi si chiama Magit, un'interfaccia Git per Emacs che si concentra sull'ottimizzazione del flusso di lavoro.
I comandi vengono richiamati tramite brevi sequenze di tasti mnemoniche che tengono conto della posizione del cursore nell'interfaccia altamente interattiva per fornire un comportamento contestuale. Magit è un'interfaccia utente testuale completa per Git. Colma il divario tra l'interfaccia a riga di comando di Git e le varie interfacce grafiche, consentendo di eseguire attività di controllo della versione, sia semplici che complesse, con pochi tasti.
Magit sembra una versione migliorata di ciò che si ottiene eseguendo alcuni comandi Git , ma in Magit ogni informazione visibile è anche elaborabile a un livello che va ben oltre quello offerto da qualsiasi interfaccia grafica Git. Inoltre, aggiorna automaticamente l'output quando diventa obsoleto. In background, Magit si limita a eseguire i comandi Git e, se l'utente desidera visualizzare cosa è in esecuzione, Magit semplifica notevolmente l'apprendimento della riga di comando di Git.
Magit supporta e semplifica l'utilizzo di funzionalità di Git che la maggior parte degli utenti e degli sviluppatori di altri client Git non sarebbero in grado di rappresentare in modo efficace tramite un'interfaccia non a riga di comando. Magit è più veloce e intuitivo della riga di comando o di qualsiasi interfaccia grafica, e questo vale sia per i principianti che per gli esperti.
La maggior parte dei potenziali utenti non è a conoscenza di Magit. Altri potrebbero essere a conoscenza della sua esistenza, ma non prenderebbero in considerazione di provarlo perché è implementato come un'estensione dell'editor di testo Emacs.
Jonas Bernoulli dice di voler cambiare questa percezione di Magit.
" Questo è un aspetto che intendo cambiare nel corso del prossimo anno, poiché credo che Magit possa essere un'ottima interfaccia Git anche per gli utenti di altri editor e IDE. Ho la sensazione che molti utenti Git desiderino, o quantomeno apprezzerebbero, qualcosa di simile a Magit."
La curva di apprendimento di Magit è relativamente piatta, purché si abbia già familiarità con Emacs e Git. Senza una conoscenza preliminare di Emacs, la curva è un po' più ripida.
Tuttavia, a parte il fatto che Magit non sembra molto impressionante a prima vista, il principale fattore che impedisce ai potenziali utenti di provarlo è la curva di apprendimento (reale o percepita) (e purtroppo anche la reputazione) di Emacs. Gli utenti di Emacs, ovviamente, pensano che valga la pena superare questa barriera, ma non aiuterà o convincerà nessuno che abbia intenzione di attenersi al loro attuale editor o IDE e voglia solo provare Magit.
Informazioni su Magit 3.0
Tra le nuove funzionalità di questa versione, la principale novità riguarda i menu completamente riprogettati per la selezione degli argomenti e l'invocazione dei comandi suffisso. Magit ora utilizza il pacchetto Transient per implementare questi menu.
Magit-Section è ora distribuito indipendentemente da Magit, consentendo a pacchetti non correlati di utilizzarlo per implementare buffer simili a quelli di Magit. A differenza di Transient, è ancora mantenuto nel repository di Magit; tuttavia, ora è corredato da un proprio manuale.
Allo stesso modo, Magit non presuppone più che il ramo principale sia chiamato master. Senza alcuna configurazione utente, Magit testa main, master, trunk e development in quest'ordine e utilizza il primo che esiste nel repository corrente come ramo principale.
Magit differisce notevolmente dalle altre interfacce Git e i suoi vantaggi non sono immediatamente evidenti da alcuni screenshot. “Sfortunatamente, la maggior parte dei potenziali utenti non conosce nemmeno Magit. Altri potrebbero essere a conoscenza della sua esistenza, ma non prenderebbero in considerazione di provarlo perché è implementato come un'estensione dell'editor di testo Emacs e non è quello che usano.
Infine, se siete interessati ad approfondire l'argomento, potete trovare maggiori dettagli al seguente link.