有没有办法列出分支(git branch
)沿着它们拥有的最新标记(git describe
)?
我想要的结果是
branch1 (based on V1.1)
* branch2 (based on V1.2)
branch3 (based on V2)
这里版本号是标签。我想保留我在自定义--format
中设置的颜色和格式,
现在,我的想法是这样的:
versions=$(git branch --format "%(refname:short)" | xargs git describe --abbrev=0)
git branch --format "$(HEAD) $(refname:short) (based on [[???]])
其中???将是versions
的一些扩展,它将是第一行上的第一行,第二行上的第二行,...
这是好的做法吗?什么是好的方法来做到这一点?
1条答案
按热度按时间sf6xfgos1#
在所有分支上运行一个循环,并在循环中为每个分支调用
git describe --tags
。在所有分支上运行循环:
仅打印短名称:
创建一个shell脚本,为每个分支调用
git describe
:最后评估脚本:
参见the docs示例。
另一种方法是在
git for-each-ref
外部运行循环: