如何获取Git中当前分支的名称?
当前回答
我知道这很晚了,但在linux/mac上,从终端可以使用以下命令。
git status | sed -n 1p
说明:
gitstatus->获取工作树状态sed-n 1p->从状态体获取第一行
对上述命令的响应如下:
"On branch your_branch_name"
其他回答
只需在~/.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提供
您可以永久设置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获取当前分支,
git branch --show-current
您还有显示完整refspec的git符号ref HEAD。
要在Git v1.8及更高版本中仅显示分支名称(感谢Greg指出这一点):
git symbolic-ref --short HEAD
在Git v1.7+上,您还可以执行以下操作:
git rev-parse --abbrev-ref HEAD
如果您在一个分支上,这两个分支都应该给出相同的分支名称。如果你头脑冷静,答案就不同了。
注:在早期的客户端上,这似乎有效:git符号ref HEAD|sed-e“s/^refs\/heads\///”–Darien 26。2014年3月
您可以使用一条grep指令来完成此操作,使用Perl模式和\K来重置匹配缓冲区,因此您只能获得分支名称。
$ git branch | grep -oP "^\*\s+\K\S+$"
master
推荐文章
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- 在GitHub上有一个公共回购的私人分支?
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖
- Git拉另一个分支
- 在Bash命令提示符上添加git分支
- 如何更改Git日志日期格式