gpt4 book ai didi

linux - 在提示符下配置 git 分支

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:28:36 24 4
gpt4 key购买 nike

我已经更新了我的 bash 文件,以便按照说明显示当前的 Git 分支 here .我最终使用的是

PS1="\u@\h \W \$(__git_ps1)\$ "

然而...

  1. 我看不到能够将 (branch) 替换为 [branch],即在方括号而不是圆括号中显示分支名称。
  2. 原始版本有颜色:

    PS1="\[$GREEN\]\t\[$RED\]-\[$BLUE\]\u\[$YELLOW\]\[$YELLOW\]\w\[\033[m\]\[$MAGENTA\]\$(__git_ps1)\[$WHITE\]\$ "

    但是当我使用它时,我没有看到任何颜色。我如何才能看到颜色以及外壳使用的标准设置是什么?

最佳答案

1 - 用括号而不是圆括号分隔分支名称

这是 .git-prompt.sh 文件的相关段落(在现代 Git 版本中,包含 __git_ps1 函数的定义):

#    3a) Change your PS1 to call __git_ps1 as
# command-substitution:
# Bash: PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ '
# ZSH: setopt PROMPT_SUBST ; PS1='[%n@%m %c$(__git_ps1 " (%s)")]\$ '
# the optional argument will be used as format string.

__git_ps1 接受一个可选参数,您可以使用该参数自定义字符串的格式。在你的情况下,你应该使用

PS1="\u@\h \W \$(__git_ps1 '[%s]')\$ "

2 - 使用颜色

您可以在问题的代码中使用颜色,但您需要确保定义了相关变量。将以下行放在 ~/.bashrc 文件中的某处:

RED=$(tput setaf 1)
GREEN=$(tput setaf 2)
YELLOW=$(tput setaf 3)
BLUE=$(tput setaf 4)
MAGENTA=$(tput setaf 5)
WHITE=$(tput setaf 7)
RESET=$(tput setaf 0)

获取~/.bashrc 文件后,您将能够使用这些颜色。例如,这是您的提示的简化版本,当前分支名称(和周围的括号)以红色突出显示:

PS1="\W \[$RED\$(__git_ps1 '[%s]')\]\[$RESET\$\] "

enter image description here

关于linux - 在提示符下配置 git 分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25911546/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com