是否有一个Git命令等价于:

git branch | awk '/\*/ { print $2; }'

当前回答

这不是更短,但它也处理分离的分支:

git branch | awk -v FS=' ' '/\*/{print $NF}' | sed 's|[()]||g'

其他回答

喜欢别名的同学: 将以下文件放到你的.zshrc中,这样你就可以更容易地获得git命令流:

alias gpsu="git push -set-upstream origin $(git symbol -ref -short HEAD)"

据我所知,没有办法在Git中本地显示当前的分支,所以我一直在使用:

git branch | grep '*'
$ git rev-parse --abbrev-ref HEAD
master

这应该适用于Git 1.6.3或更新版本。

的输出可能会让您感兴趣

git symbolic-ref HEAD

特别是,根据您的需要和您可能希望做的布局

basename $(git symbolic-ref HEAD)

or

git symbolic-ref HEAD | cut -d/ -f3-

还有。git/HEAD文件,你可能会感兴趣。

在Git 1.8.1中,你可以使用带有"——short"选项的Git symbol -ref命令:

$ git symbolic-ref HEAD
refs/heads/develop
$ git symbolic-ref --short HEAD
develop