Mac OSX提示符支持Git分支感知。

5
我一直在我的主目录中使用.profile文件,以便在提示符上显示git分支并显示我当前所在的rvm gemset和python虚拟环境...大部分都正常工作,我遇到的问题是为了根据分支状态显示不同颜色的分支,每次都必须执行source ~/.profile,还必须这样做才能在CYAN中显示python虚拟环境。
肯定有一种方法或我错过了什么东西,这样我就不必每次进入不同的文件夹时都要运行source ~/.profile,以便分支颜色基于状态。
这是我的.profile。

https://gist.github.com/3628788

感谢您帮忙解决这个问题!

1个回答

6

使用PROMPT_COMMAND变量定义一个函数,在每个命令后设置你的PS1。将此放置在你的.profile文件底部,代替对PS1的分配:

prompt_cmd () {
    PS1="${PYTHON_VIRTUALENV}$PURPLE\$(set_rvm_prompt)$NO_COLOUR\u@\h:[\W]${B_STATE}\$(parse_git_branch)$NO_COLOUR\$ "
}

PROMPT_COMMAND=prompt_cmd

现在,在显示提示符之前,bash将执行函数prompt_cmd,根据PYTHON_VIRTUALENVset_rvm_prompt()parse_git_branch()的最新信息更新PS1


1
我不得不将set_rvm_prompt和parse_git_branch添加到prompt_cmd中,现在它的工作就像魅力一样!这是更新后的文件https://gist.github.com/3354613 - maumercado

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接