如何获取Git中当前分支的名称?
当前回答
git symbolic-ref -q --short HEAD
我在需要当前分支名称的脚本中使用这个。它将向您显示当前HEAD的简短符号引用,这将是您当前的分支名称。
其他回答
很简单,我用一行(bash)就搞定了
git branch | sed -n '/\* /s///p'
(信贷:有限补偿)
当我在那里的时候,唯一的一条线路就是远程跟踪分支(如果有的话)
git rev-parse --symbolic-full-name --abbrev-ref @{u}
您只需在Linux上的存储库目录中键入命令行(控制台):
$ git status
您将看到一些文本,其中类似于:
...
On branch master
...
这意味着您当前处于主分支。如果此时您正在编辑任何文件,并且该文件位于同一本地存储库(包含受Git版本控制管理的文件的本地目录)中,则您正在编辑该分支中的文件。
如果在分支上,则仅显示当前分支的名称,但如果分离,则打印当前提交id:
git symbolic-ref --short HEAD 2>/dev/null || git rev-parse --short HEAD
如果分离,第一部分将返回错误,第二部分将始终打印当前提交id。
您还可以在当前项目的.git目录中看到当前分支的名称。
在终端中键入命令:open.git/HEAD输出文件包含当前分支的名称ref:refs/heads/{current_working_branch}
如果CI服务器没有带有分支名称的环境变量,并且容器内部没有git二进制文件,则可以使用:
cat.git/HEAD|awk-F'/'“{print$NF}”
推荐文章
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的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日志日期格式