如何获取Git中当前分支的名称?
当前回答
要使用git获取当前分支,
git branch --show-current
其他回答
很抱歉,这是另一个命令行答案,但当我发现这个问题时,我正在寻找这个答案,其中许多答案都很有用。我的解决方案是以下bashshell函数:
get_branch () {
git rev-parse --abbrev-ref HEAD | grep -v HEAD || \
git describe --exact-match HEAD 2> /dev/null || \
git rev-parse HEAD
}
这应该总是给我一些既可读又可直接用作git checkout参数的东西。
在本地分支上:feature/HS-0001在标记的提交(分离)上:v3.29.5在远程分支上(已分离,未标记):SHA1在任何其他分离的提交上:SHA1
我知道这很晚了,但在linux/mac上,从终端可以使用以下命令。
git status | sed -n 1p
说明:
gitstatus->获取工作树状态sed-n 1p->从状态体获取第一行
对上述命令的响应如下:
"On branch your_branch_name"
使用git分支--包含HEAD|tail-1|xargs,它也适用于“分离的HEAD”状态。
随着时间的推移,我们可能会有一长串分支。
虽然其他一些解决方案很好,但以下是我所做的(从雅各布的回答中简化):
git branch | grep \*
Now,
git status
有效,但仅当有任何本地更改时
您还可以在当前项目的.git目录中看到当前分支的名称。
在终端中键入命令:open.git/HEAD输出文件包含当前分支的名称ref:refs/heads/{current_working_branch}
推荐文章
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的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日志日期格式