【问题标题】:Git Tips and Tricks : Display Branch on Command Prompt not working and created side effects of git branch function not working and many othersGit 提示和技巧:在命令提示符下显示分支不工作,并产生 git 分支功能不工作和许多其他的副作用
【发布时间】:2010-02-09 17:53:19
【问题描述】:

只是想增加我对 git 的了解并使用技巧和窍门,

我按照TipPS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ ' 中的建议更新了我的 .bashrc 文件,但令我惊讶的是,现在我的 git branch 命令不起作用,即使我从 .bashrc 中删除它也对我不起作用。

此外,我每次使用命令提示符都会收到-bash: __git_ps1: command not found 任何指导或建议?

更新:我现在想摆脱它,我该如何实现?

【问题讨论】:

    标签: git


    【解决方案1】:

    您是否启用了git bash-completion 功能?您可能已经在您的系统上找到它们,只是没有启用。

    要确定它们是否打开,请输入 gitSpaceTab -- 如果您获得文件列表,则表示您没有完成,如果你得到一个命令列表,你就会这样做(并且你的提示应该可以工作)。

    更新:从 .bashrc 中删除该行后,您遇到的问题应该会在您重新启动 shell 后消失。仅仅重新采购文件并没有帮助,因为它不会取消设置提示变量(无论如何,该变量在您覆盖它之前确实有一个值)。

    【讨论】:

    • 是的,您需要在 .bashrc 中获取 Git 的 bash-completion 文件。
    【解决方案2】:

    通过谷歌搜索“__git_ps1”,我找到了the first result,上面写着:

    在 git 发行版中已经有一个功能可以做到这一点。如果您查看源 有一个名为 contrib 的目录,它有一个 bash 完成文件,它给你一个 __git_ps1 函数。

    听起来你需要去寻找那个 contrib/ 文件并在你的 bash 配置文件中获取它!

    【讨论】:

      【解决方案3】:

      如果你使用的是 mac 试试这个

      sudo port selfupdate
      sudo port install git-core +bash_completion
      then 
      cd /private/etc/
      sudo vi bashrc
      and add the next
      source /opt/local/share/doc/git-core/contrib/completion/git-completion.bash
      if [ -f /opt/local/etc/bash_completion ]; then
         . /opt/local/etc/bash_completion
      fi
      
      export PS1='\w $(__git_ps1 "\[\e[31m\]:%s")\[\e[0m\] > '
      

      【讨论】:

      • 再详细一点的解释就好了。
      【解决方案4】:

      我认为最新版本的 git 将提示功能从 git-completion.bash 拆分为单独的 prompt.sh 文件...我必须在我的 bash 配置文件中添加一个源代码行以包含该提示文件,然后才我是否摆脱了 __git_ps1 not found 投诉。

      【讨论】:

        【解决方案5】:

        这对我有用 只需转到您的 bash 个人资料 vi ~/bash_profile 并粘贴此

        parse_git_branch() {
            git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
        }
        
        export PS1="\u@\h \[\033[32m\]\w - \$(parse_git_branch)\[\033[00m\] $ "
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2013-03-30
          • 2016-05-19
          • 1970-01-01
          • 1970-01-01
          • 2011-11-09
          • 2010-12-15
          相关资源
          最近更新 更多