如何获取Git中当前分支的名称?


当前回答

只需在~/.bash_profile中添加以下行:

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

这样,您可以在Terminal中拥有当前分支名称

由Coderwall.com提供

其他回答

下面的shell命令告诉您当前所在的分支。

git branch | grep ^\*

如果您不想在每次想知道分支并使用Bash时键入长命令,请为该命令提供一个短别名,例如别名cb,如下所示。

alias cb='git branch | grep ^\*'

当您在branch master中并且提示为$时,您将获得*master,如下所示。

$ cb
* master

我会尝试以下方法之一:

1.>git符号ref--短HEAD

git symbolic-ref --short HEAD
>>> sid-dev

2.>git分支--显示当前

git branch --show-current
>>> sid-dev

3.>git name rev–仅名称HEAD

git name-rev –name-only HEAD
>>> HEAD sid-dev

笔记:

1.>git symbol ref--short HEAD显示当前分支HEAD的简短符号引用。这是当前分支名称。

2.>gitbranch--showcurrent也是打印当前分支名称的一种简单有效的方法。

3.>git name rev–name only HEAD为当前分支的HEAD版本提供符号名称

4.>在上面的示例中,sid-dev是我的分支的名称。

git branch

应显示回购协议的所有本地分支机构。星形分支是您当前的分支。


要仅检索您所在分支的名称,请执行以下操作:

git rev-parse --abbrev-ref HEAD

或Git 2.22及以上版本:

git branch --show-current

您可以永久设置bash输出以显示git分支名称。当您使用不同的分支时,它非常方便,无需一直键入$git状态。Github repo git-aware提示.

打开终端(ctrl-alt-t)并输入命令

mkdir ~/.bash
cd ~/.bash
git clone git://github.com/jimeh/git-aware-prompt.git

使用sudo nano~/.bashrc命令编辑.bashrc(适用于Ubuntu),并在顶部添加以下内容:

export GITAWAREPROMPT=~/.bash/git-aware-prompt
source "${GITAWAREPROMPT}/main.sh"

然后粘贴代码

export PS1="\${debian_chroot:+(\$debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\] \[$txtcyn\]\$git_branch\[$txtred\]\$git_dirty\[$txtrst\]\$ "

在前面粘贴安装代码的同一文件的末尾。这将为您提供彩色输出:

还有一种选择:

git name-rev --name-only HEAD