我正在尝试让我的 shell 提示符显示当前的 git 分支名称。
我已经阅读了一些教程和博客文章等,据我所知,我所做的一切都是正确的,但似乎没有用。
我希望提示看起来像这样:
dannys-macbook:hillcrest-store [master]$
但目前它看起来像这样:
dannys-macbook:hillcrest-store danny$
我已将以下内容添加到 ~/.bash_profile:
PATH=$PATH:/usr/local/bin; export PATH
COLOR1="\[\e[1;32m\]"
COLOR2='\[\e[1;1m\]'
COLOR3='\[\e[m\]'
GIT_STATUS=$(__git_ps1 " %s")
PROMPT_CHAR="$"
PROMPT="${COLOR1}\u@\h${COLOR3} \w${COLOR2}${GIT_STATUS} ${COLOR2}${PROMPT_CHAR$
PS1="$PROMPT"
export PS1
我不确定我做错了什么,也许我应该以某种方式“重置”提示?
最佳答案
更简单的解决方案:引用 GIT_STATUS 这样它就不会在 bash 启动时进行评估,而是在 bash 显示提示时进行评估:
COLOR1='\[\e[1;32m\]'
COLOR2='\[\e[1;1m\]'
COLOR3='\[\e[m\]'
GIT_STATUS='$(__git_ps1 " %s")'
PROMPT_CHAR='\$'
PS1="${COLOR1}\u@\h${COLOR3} \w${COLOR2}${GIT_STATUS} ${COLOR2}${PROMPT_CHAR}"
另请注意,导出 PS1 不是一个好主意。
关于git - 在 shell 提示符下显示 git 分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7295011/