如何获取工作副本的当前分支或标记名称?我已经看到了引用rev-parse --abbrev-ref HEAD
将给出分支名称的引用,但是如果checkout是标记,这不起作用,在这种情况下它只返回'HEAD'。我需要以某种方式获取这些修订的标记名称。
要清楚,我想要两个可能的名字之一:
我想你想要这个:
git symbolic-ref -q --short HEAD || git describe --tags --exact-match
这将输出HEAD的值,如果它没有分离,或者发出标记名称,如果它是完全匹配的话。否则它会显示错误。
此命令可以打印此优先级的名称:tag
> branch
> commit
git describe --tags --exact-match 2> /dev/null \
|| git symbolic-ref -q --short HEAD \
|| git rev-parse --short HEAD