我正在尝试在终端中更改命令提示符。我不断收到错误:
-bash: __git_ps1: command not found
我已经尝试过,只需在终端中按原样输入:__git_ps1
。我也已经在.bash_profile
if [ -f ~/.git-completion.bash ]; then
source ~/.git-completion.bash
export PS1='[\W]$(__git_ps1 "(%s)"): '
fi
您可能会看到/告诉,是的,我确实安装了自动完成功能,并且效果很好!
我遇到了这个问题:“ PS1 env变量在Mac上不起作用 ”,它给出了代码
alias __git_ps1="git branch 2>/dev/null | grep '*' | sed 's/* \(.*\)/(\1)/'"
因此,我将其添加到我.bash_profile
希望它会有所改变的地方。好吧,它做到了。它只是更改了错误输出。
这是.bash_profile
附加的:
alias __git_ps1="git branch 2>/dev/null | grep '*' | sed 's/* \(.*\)/(\1)/'"
if [ -f ~/.git-completion.bash ]; then
source ~/.git-completion.bash
export PS1='[\W]$(__git_ps1 "(%s)"): '
fi
现在这是更改后的错误输出:
sed: (%s): No such file or directory
注意:我也将别名移到了源下方,没有区别。我有 git版本1.7.12.1
这应该是一个简单的更改。有人可以帮帮我吗?
编辑10/13/12
不,我绝对不想自己定义__git_ps1,而只是想查看这样做是否可以识别它。是的,我已经.git-completion.bash
安装了文件。这是我在计算机上自动完成的方式。
cd ~
curl -OL https://github.com/git/git/raw/master/contrib/completion/git-completion.bash
mv ~/git.completion.bash ~/.git-completion.bash
一ls -la
则列出.git-completion.bash
文件。
编辑10/13/12-由马克·朗伊尔(Mark Longair)解决(下)
以下代码对我有用,.bash_profile
而其他代码则不行。
if [ -f ~/.git-prompt.sh ]; then
source ~/.git-prompt.sh
export PS1='Geoff[\W]$(__git_ps1 "(%s)"): '
fi
git <tab>
按Mark Longair引用的提交中的提示来启用提示。
git-completion.bash
定义__git_ps1
是一个外壳函数。是你的吗?您怎么知道完成工作?键入git h
<TAB> 会发生什么?