最佳答案
我正在尝试更改终端中的命令提示符。我总是得到错误:
-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环境变量不能在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
< em >注意:< / em >我也将别名移动到源代码下面,没有区别。我有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