是否有一个Git命令等价于:
git branch | awk '/\*/ { print $2; }'
是否有一个Git命令等价于:
git branch | awk '/\*/ { print $2; }'
当前回答
的输出可能会让您感兴趣
git symbolic-ref HEAD
特别是,根据您的需要和您可能希望做的布局
basename $(git symbolic-ref HEAD)
or
git symbolic-ref HEAD | cut -d/ -f3-
还有。git/HEAD文件,你可能会感兴趣。
其他回答
的输出可能会让您感兴趣
git symbolic-ref HEAD
特别是,根据您的需要和您可能希望做的布局
basename $(git symbolic-ref HEAD)
or
git symbolic-ref HEAD | cut -d/ -f3-
还有。git/HEAD文件,你可能会感兴趣。
这不是更短,但它也处理分离的分支:
git branch | awk -v FS=' ' '/\*/{print $NF}' | sed 's|[()]||g'
我想这应该很快,可以与Python API一起使用:
git branch --contains HEAD
* master
为了完整起见,至少在Linux上,echo $(__git_ps1)应该用圆括号括起当前分支的名称。
这在某些情况下可能很有用,因为它不是Git命令(但依赖于Git),特别是用于设置Bash命令提示符以显示当前分支。
例如:
/mnt/c/git/ConsoleApp1 (test-branch)> echo $(__git_ps1)
(test-branch)
/mnt/c/git/ConsoleApp1 (test-branch)> git checkout master
Switched to branch 'master'
/mnt/c/git/ConsoleApp1 (master)> echo $(__git_ps1)
(master)
/mnt/c/git/ConsoleApp1 (master)> cd ..
/mnt/c/git> echo $(__git_ps1)
/mnt/c/git>
据我所知,没有办法在Git中本地显示当前的分支,所以我一直在使用:
git branch | grep '*'