2016-11-22 30 views
0
之外

我(简体)PS1:export PS1="\A \w\ $(__git_ps1) \$ "猛砸Git的提示不掩饰库

提示:16:08-~/dev (master) $

这都是很好的,它显示了分支的名字时,有一个。但在回购之外,它仍然显示(master)而不是。我一直在疯狂搜索,但找不到答案。

你需要什么环境信息来帮助我解决这个问题?我还不是很熟悉Bash。必须有一些东西关闭。或者我的Git版本有问题吗?

16:08 ~/dev (master) $ git --version 
git version 2.7.4 

在此先感谢您看看这个!

回答

4

您正在运行__git_ps1一次,当您定义PS1时,并且在稍后的每个提示中使用相同的值。每当显示提示符时,您想要运行该命令,因此您需要转义$以防止立即发生命令替换。

export PS1='\A \w\ $(__git_ps1) \$ ' 
+0

你是说'export PS1 ='\ A \ w \\ $(__ git_ps1)\ $''? 谢谢,就是这样。非常好。编辑必须至少有6个字符,所以如果您愿意将'\\'添加到您的答案中,我会接受它作为解决方案。 – ThaJay