写于:2015-05-22	最近一次更新:2015-12-30

Intent:

git 的子命令和参数都非常的多而且长,我想要补全子命令及其参数的功能 当进入 git 的工作目录时,我想让命令提示符变的不一样,一眼就知道当前在哪个分支上工作

Oneway:

安装 git-completion.bash 和 git-prompt.sh 即可 从 https://github.com/git/git/tree/master/contrib/completion 可以获得 git-completion.bash 和 git-prompt.sh 把 git-completion.bash 放到 /etc/bash_completion.d/ 目录里 把 git-prompt.sh 放到 /etc/profile.d/ 目录里,并在 git-prompt.sh 里加上这样这样一句 export PS1='[\u@\h:\w$(__git_ps1 " (%s)")]\n\$ ' 这样就可以了

Details:

如果在使用 screen 的情况下,创建一个新窗口时 或者在新窗口中回车时总是提示 bash: __git_ps1: command not found 那么,请在 ~/.screenrc 或者 /etc/screenrc 中增加这样一行 shell -$SHELL 即可 (shell -$SHELL 的作用是使screen的每个窗口都使用和登录shell一样的环境变量)