Imansible mostrare un albero Git nel terminale

Il vecchio articolo di Killswitchcollective.com, 30 giugno 2009 , ha i seguenti input e output

git co master git merge [your_branch] git push upstream ABCDE ABCDEFG \ ----> \ your branch CDE G 

Sono interessato al modo in cui ottieni la visualizzazione ad albero dei commit nel tuo terminale senza usare Gitk o Gitx in OS / X.

Come si può ottenere la visualizzazione ad albero dei commit nel terminale?

Come si può ottenere la visualizzazione ad albero dei commit nel terminale?

 git log --graph --oneline --all 

è un buon inizio

Potresti ricevere delle lettere strane. Sono codici ASCII per colors e struttura. Per risolvere questo problema aggiungi quanto segue al tuo .bashrc :

 export LESS="-R" 

in modo tale che non sia necessario utilizzare il filtro ASCII di Tig per

 git log --graph --pretty=oneline --abbrev-commit | tig // Masi needed this 

Il grafico basato su testo dell’articolo di Git-ready contiene altre opzioni:

 git log --graph --pretty=oneline --abbrev-commit 

git log graph

Per quanto riguarda l’articolo che hai citato, vorrei andare con la risposta di Pod : produzione ad-hoc fatta a mano.


Jakub Narębski menziona nel commento tig , un’interfaccia in modalità testo basata su ncurses per git. Guarda le loro uscite .
Ha aggiunto un’opzione --graph nel 2007.

Una soluzione è creare un alias nel tuo .gitconfig e chiamarlo facilmente:

 [alias] tree = log --graph --decorate --pretty=oneline --abbrev-commit 

E quando lo chiami la prossima volta, utilizzerai:

 git tree 

Per metterlo in ~ / .gitconfig senza doverlo modificare, puoi fare:

 git config --global alias.tree "log --graph --decorate --pretty=oneline --abbrev-commit" 

(Se non usi il comando –global lo inserirà nel file .git / config del tuo repository corrente).

 git log --oneline --decorate --all --graph 

Un albero visivo con nomi di rami inclusi.

Usa questo per aggiungerlo come alias

 git config --global alias.tree "log --oneline --decorate --all --graph" 

Lo chiami con

 git tree 

Git Tree

tig

Se vuoi un albero interattivo , puoi usare tig . Può essere installato da brew su OSX e apt-get in Linux.

 brew install tig tig 

Questo è ciò che ottieni:

inserisci la descrizione dell'immagine qui

Mantenere i tuoi comandi brevi li renderà più facili da ricordare:

 git log --graph --oneline