Adicionando ramo git ao prompt do bash no snow leopard


8

Eu estou usando isso:

$(__git_ps1 '(%s)')

Funciona, no entanto, não é atualizado quando troco de diretório ou compro uma nova filial. Eu também tenho este alias:

alias reload='. ~/.bash_profile'

Exemplo de execução:

user@machine:~/dev/rails$cd git_folder/
user@machine:~/dev/rails/git_folder$reload
user@machine:~/dev/rails/git_folder(test)$git checkout master
Switched to branch 'master'
user@machine:~/dev/rails/git_folder(test)$reload
user@machine:~/dev/rails/git_folder(master)$

Como você pode ver, está sendo definido corretamente, mas somente se eu recarregar o bash_profile. Eu perdi muito tempo nisso. Estou usando o bash no snow leopard. Por favor ajude!

Edit: Você pode ver meus dotfiles no github e o arquivo configurando o PS1 aqui

Respostas:


9

Ok problema resolvido.

Eu estava fazendo:

export PS1="$(__git_ps1 '(%s)')"

e eu precisava fazer:

export PS1="\$(__git_ps1 '(%s)')"

Você precisa escapar do cifrão, caso contrário, ele é executado apenas uma vez e substituído.



Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.