2013-02-15 26 views
0

我的Ubuntu 12.10之下,我已經安裝了這個混帳提示感知:https://github.com/jimeh/git-aware-prompt在Ubuntu下的Git分支提示不工作

每當我在其中有一個Git倉庫的目錄,我需要做的源~/.bash_profile顯示分支。如果我不這樣做,它不會顯示出來。但是,當我關閉終端並轉到同一個目錄時,我需要再次執行~/.bash_profile,爲什麼會發生這種情況?

我的問題是,在我的.bashrc已經定義PS1爲:

case "$TERM" in 
    xterm-color) color_prompt=yes;; 
esac 

# uncomment for a colored prompt, if the terminal has the capability; turned 
# off by default to not distract the user: the focus in a terminal window 
# should be on the output of commands, not on the prompt 
force_color_prompt=yes 

if [ -n "$force_color_prompt" ]; then 
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then 
    # We have color support; assume it's compliant with Ecma-48 
    # (ISO/IEC-6429). (Lack of such support is extremely rare, and such 
    # a case would tend to support setf rather than setaf.) 
    color_prompt=yes 
    else 
    color_prompt= 
    fi 
fi 

if [ "$color_prompt" = yes ]; then 
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' 
else 
    PS1='${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ ' 
fi 
unset color_prompt force_color_prompt 

# If this is an xterm set the title to [email protected]:dir 
case "$TERM" in 
xterm*|rxvt*) 
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\[email protected]\h: \w\a\]$PS1" 
    ;; 
*) 
    ;; 
esac 

這將覆蓋我在.bash_profile文件:

export GITAWAREPROMPT=~/.bash/git-aware-prompt 
source $GITAWAREPROMPT/main.sh 
export PS1="\[email protected]\h \w\[$txtcyn\]\$git_branch\[$txtylw\]\$git_dirty\[$txtrst\]\$ " 

我怎樣才能將這些PS1的兩設置?

回答

1

~/.bash_profile的內容放入~/.bashrc。每次啓動終端時,都會讀取~/.bashrc的內容。