Domanda

vecchio articolo

di Killswitchcollective.com 30 Giugno 2009 , dispone dei seguenti ingressi e le uscite

git co master
git merge [your_branch]
git push

upstream    A-B-C-D-E            A-B-C-D-E-F-G
                 \        ---->               \
your branch       C-D-E                        G

Sono interessato come si ottiene l'albero come vista di commit nel vostro terminale senza l'utilizzo Gitk o GitX in OS / X.

Come si può ottenere la vista ad albero di commit nel terminale?

È stato utile?

Soluzione

Come si può ottenere la vista ad albero di commit nel terminale?

git log --graph --oneline --all

è un buon inizio.

È possibile ottenere alcune lettere strane. Sono codici ASCII per i colori e la struttura. Per risolvere questo problema aggiungere il seguente al vostro .bashrc:

export LESS="-R"

in modo tale che non è necessario il filtro ASCII utilizzo Tig da

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

Il href="http://www.gitready.com/intermediate/2009/01/26/text-based-graph.html" rel="noreferrer"> grafico basato su testo dell'articolo contiene altre opzioni:

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

grafico git log

Per quanto riguarda l'articolo si parla, vorrei andare con di Pod risposta :. ad hoc uscita fatti a mano


Jakub Narębski menzioni nei commenti tig , l'interfaccia in modalità testo basato su ncurses per git. Vedere loro uscite .
Ha aggiunto un --graph opzione nel 2007.

Altri suggerimenti

Una soluzione è quella di creare un alias nel .gitconfig e chiamare facilmente:

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

E quando si chiama la prossima volta, che verrà utilizzato:

git tree

Per mettere in ~ / .gitconfig senza dover modificare esso, si può fare:

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

(Se non si utilizza il --global sarà metterlo nel .git / config del vostro repo corrente.)

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

Un albero visivo con i nomi di filiale incluso.

Usare questo per aggiungerlo come alias

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

Si chiama con

git tree

Git Tree

tig

Se si desidera un interattivo albero, è possibile utilizzare brew . Può essere installato da apt-get su OSX e <=> in Linux.

brew install tig
tig

Questo è quello che si ottiene:

entrare descrizione dell'immagine qui

Mantenere il proprio comandi breve li renderà più facile da ricordare:

git log --graph --oneline

Vorrei suggerire a chiunque di scrivere il comando completo

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

, piuttosto che creare un alias.

E 'bene per ottenere i comandi in testa, in modo da sapere a memoria vale a dire non dipendono alias quando si cambia le macchine.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top