terça-feira, 27 de janeiro de 2009

Mostrando o status e o branch de repositórios git no console

Com uma função de shell script e a ajuda da variável PS1 podemos fazer uma configuração bem interessante: exibir no próprio console em qual branch estamos e qual o estado dele.

Um exemplo de como fica:
Git no terminal

Esse é um screenshot do meu desktop, mostrando o repositório do tracks (um aplicativo interessante para quem pretende usar a metodologia GTD). Em amarelo, o caminho do repositório. Entre os colchetes, o branch no qual estamos, e finalmente, um * indicando se o repositório contém modificações ainda não confirmadas no repositório.

Para configurar, basta adicionar ao seu .bashrc:

function parse_git_dirty {
[[ $(git status 2> /dev/null | tail -n1) \
!= "nothing to commit (working directory clean)" \
]] && echo "*"
}

function parse_git_branch {
git branch --no-color 2> /dev/null | \
sed -e '/^[^*]/d' \
-e "s/* \(.*\)/[\1$(parse_git_dirty)]/"
}

export PS1='\u@\h \[\033[1;33m\]\w\[\033[0m\]$(parse_git_branch)$'


Visto originalmente aqui.

[]'s
- Walter Cruz
blog comments powered by Disqus