在CI服务器上我们git clone --depth 1 <repo>
,我想为正在构建的工件创建一个版本字符串。我希望我的版本字符串看起来像这样:
0.1.0-15-0bef345-master
其中:
0.1.0
是从最新代码获取的版本,使用git ls-remote
很容易。 15
是0.1.0
代码0bef345
是git commit master
是分支现在的问题是,如何获得15(标签与HEAD
之间的提交量)。
通常,当您拥有完整的历史记录时,这很容易git rev-list --count v0.1.0 HEAD
。
如何在不必克隆整个历史记录的情况下执行此操作?