Pregunta

Antiguo artículo de Killswitchcollective.com, 30 de junio de 2009, tiene las siguientes entradas y salidas

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

Me interesa cómo obtener la vista de árbol de confirmaciones en su terminal sin usar Gitk o Gitx en OS/X.

¿Cómo se puede obtener la vista en forma de árbol de las confirmaciones en la terminal?

¿Fue útil?

Solución

¿Cómo se puede obtener la vista en forma de árbol de confirmaciones en la terminal?

git log --graph --oneline --all

es un buen comienzo.

Usted puede obtener algunas cartas extrañas. Son códigos ASCII para los colores y la estructura. Para resolver este problema, agregue el siguiente a su .bashrc:

export LESS="-R"

de tal manera que no es necesario el uso de filtro ASCII de Tig por

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

El rel="noreferrer"> href="http://www.gitready.com/intermediate/2009/01/26/text-based-graph.html" gráfica basada en el texto del artículo contiene otras opciones:

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

gráfico de registro de git

En cuanto al artículo que mencionas, yo iría con vaina de respuesta :. ad-hoc de salida hecha a mano


Jakub Narębski menciones en los comentarios tig , una interfaz en modo texto basado en ncurses para Git. Ver sus lanzamientos .
Añadió una opción --graph de nuevo en 2007.

Otros consejos

Una solución es crear un Alias ​​en su .gitconfig y llámalo fácilmente:

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

Y la próxima vez que lo llames, usarás:

git tree

Para ponerlo en tu ~/.gitconfig sin tener que editarlo, puedes hacer:

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

(Si no usa --global, lo colocará en .git/config de su repositorio actual).

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

Un árbol visual con los nombres de las sucursales incluido.

Utilice esta opción para agregarlo como un alias

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

Usted lo llama con

git tree

Git árbol

tig

Si quieres un interactivo árbol, puede utilizar brew . Puede ser instalado por apt-get en OSX y <=> en Linux.

brew install tig
tig

Esto es lo que se obtiene:

introducir descripción de la imagen aquí

Mantener sus órdenes cortas hará que sean más fáciles de recordar:

git log --graph --oneline

Yo sugeriría que cualquiera pueda escribir el comando completo

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

en lugar de crear un alias.

Es bueno para obtener los comandos en la cabeza, por lo que sé de memoria es decir, no dependen de alias cuando se cambia máquinas.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top