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


当前回答

gitbranch仅显示当前分支名称。

虽然gitbranch将显示所有分支并用星号突出显示当前分支,但在处理大量分支时,它可能太麻烦。

要仅显示当前所在的分支,请使用:

git rev-parse --abbrev-ref HEAD

其他回答

#!/bin/bash
function git.branch {
  br=`git branch | grep "*"`
  echo ${br/* /}
}
git.branch

只需在~/.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提供

git branch

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


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

git rev-parse --abbrev-ref HEAD

或Git 2.22及以上版本:

git branch --show-current

您可以使用一条grep指令来完成此操作,使用Perl模式和\K来重置匹配缓冲区,因此您只能获得分支名称。

$ git branch | grep -oP "^\*\s+\K\S+$"
master

很简单,我用一行(bash)就搞定了

git branch | sed -n '/\* /s///p'

(信贷:有限补偿)

当我在那里的时候,唯一的一条线路就是远程跟踪分支(如果有的话)

git rev-parse --symbolic-full-name --abbrev-ref @{u}