git输出当前分支名
期望只输出当前分支的名称,不需要其它信息。例如,当前在 dev 分支,使用命令之后输出dev
。
最开始想到的是使用 git branch
,借助于 linux 中的管道命令,可以使用如下命令来实现。
git branch | grep \* | cut -d ' ' -f2
# 输出:dev
解释一下上述命令的含义。首先,使用 git branch
命令列出所有分支,包括本地分支和远程分支,其中 *
标记的分支表示当前分支;然后,使用 grep
命令过滤出包含 *
的行;最后,使用 cut
命令,将查找结果中的第二个字段提取出来,即当前所在的分支名。-d
指定分隔符为空格,-f
指定要提取的字段编号为 2
。
上面的命令虽然原理很简单,但是写起来太复杂了,还有一个更简单的命令来实现相同的效果。
git rev-parse --abbrev-ref HEAD
# 输出:dev
这里,git rev-parse
命令用于将 git 引用(如分支名、标签名、提交 ID 等)转换为 SHA-1 值,这里 HEAD
就是一个特殊引用,--abbrev-ref
参数用于获取当前分支的缩写名称。
当然,如果你想使用git branch
命令的话,还有另一种更简单的方式,需要指定一些额外的参数。
git branch --show-current
# 输出:dev
需要注意的是,git branch --show-current
命令需要 Git 2.22.0 以上版本才能使用。
如果您觉得本文对您有用,欢迎捐赠或留言~
- 本博客所有文章除特别声明外,均可转载和分享,转载请注明出处!
- 本文地址:https://www.leevii.com/?p=3250