如何仅通过git log命令提取当前Git分支的纯名称
提取当前分支名称(仅基于git log实现)
可以通过git log的格式化输出配合文本过滤工具完成需求,以下是两种可行的命令:
方法1:用awk分割提取
git log -n 1 --pretty='%D' HEAD | awk -F'HEAD -> |, ' '{print $2}'
方法2:用sed正则匹配
git log -n 1 --pretty='%D' HEAD | sed -E 's/.*HEAD -> ([^,]+).*/\1/'
逻辑说明
git log -n 1 --pretty='%D' HEAD:输出当前HEAD关联的所有引用,格式类似(HEAD -> branch1, origin/branch1, origin/branch3),其中HEAD ->后紧跟的就是本地当前分支名。- 后续的
awk或sed命令负责从输出中精准提取出HEAD ->之后、第一个逗号之前的内容,也就是目标分支名称。
内容的提问来源于stack exchange,提问作者RAKESH YEDLAPPALLI
相关产品推荐
相关产品推荐

