在终端中预先添加当前 git 分支

在终端中预先添加当前 git 分支

如何配置终端以显示当前 git 分支?

我希望看到第二行而不是第一行:

andy@bob:~/my_projects/project_x$ 
(master)~/my_projects/project_x$

我不想再跑去git status查看我当前在哪个分支了!

答案1

你可以加下面的代码您的.bashrc文件:

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

您可以移动这些组件来根据您的喜好进行配置,例如,在$(parse_git_branch)我使用的 user@computer 部分前面加上而不显示它:

PS1="\$(parse_git_branch)${debian_chroot:+($debian_chroot)}\w$ "

显示内容:

(master)~/my_projects/project_x$ 

也可以看看:这个 PS1 变量在 .bash_profile 文件中起什么作用?

答案2

添加这一行到.bashrc

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

答案3

您还可以将以下行添加到您的 .bashrc:

PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\`__git_ps1`\$ '

答案4

这将在终端中为分支名称添加颜色

git_branch() {
   git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}

PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[1;31m\]'"\$(git_branch)\[\033[00m\]$ "

相关内容