miércoles, 2 de febrero de 2011

GIT: Ver la rama en la que estas en el promp

Si trabajamos con terminales y git nos puede venir bien este pequeño truco para no despistarnos.

De una forma sencilla podemos ver en el promp la rama en la que estamos, quedaría de la siguiente manera:

|rama_actual|jou-tu@r2d2:$

Para verlo así tenemos que editar la variable PS1 dentro del fichero .bashrc (en linux mint es el fichero /etc/bash.bashrc), y añadirle esto al principio de la variable:
$(__git_ps1 "|%s|")

justo despues del primer ' (o donde querramos ponerlo)

Yo lo tengo así, pase de tener esto:
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '

a esto:
PS1='$(__git_ps1 "|%s|")${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
Si aparte queremos tener más información de la rama (si hay cambios sin subir, etc) podemos añadir la siguiente linea al ~/.bashrc:
export GIT_PS1_SHOWDIRTYSTATE=1


Con esto nos saldra al final del nombre de la rama:
  • * - si tenemos cambios pendientes que no han sido añadido para hacer el commit.
  • + - si tenemos cambios para hacer el commit, pero este aun no se ha realizado.