【问题标题】:Bash Git prompt does not hide outside of repositoryBash Git 提示不会隐藏在存储库之外
【发布时间】:2017-04-06 08:29:46
【问题描述】:

我的(简体)PS1:export PS1="\A \w\ $(__git_ps1) \$ "

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

这一切都很好,当有分支时它会显示分支名称。但在回购之外,它仍然显示(master) 而不是。我一直在疯狂地寻找,但找不到答案。

您需要什么环境信息来帮助我解决这个问题?我还不太精通 Bash。一定有什么不对劲。还是我的 Git 版本有问题?

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

提前感谢您查看此内容!

【问题讨论】:

    标签: git bash unix prompt ps1


    【解决方案1】:

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

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

    【讨论】:

    • 你的意思是export PS1='\A \w\ \$(__git_ps1) \$ '?谢谢,就是这样。很不错。编辑必须至少有 6 个字符,所以如果您愿意在答案中添加 `\`,我会接受它作为解决方案。
    猜你喜欢
    • 2014-07-19
    • 2013-09-27
    • 1970-01-01
    • 2016-05-30
    • 2013-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多