如何从git master分支中确定最新的产品发布?

时间:2014-11-09 21:10:24

标签: git

我仍然是git的新手。当我在任何软件包上执行 git clone ... 时,它主要从主分支下载。

我的理解是主分支应包含开发和发布代码 如果是这样,是否可以从下载的主分支中找到最新(生产)版本?

2 个答案:

答案 0 :(得分:3)

如果每个版本都标有带注释的标记,则git describe就是您所需要的(来自手册页):

  

git-describe - 显示可从提交

访问的最新标记

如果您上次发布的版本是2.6.9git describe将为您提供以下输出:

2.6.9-<NUMCOMMITS>-g<CURRENTREV>

如果您当前的分支直接指向2.6.9,则不会打印NUMCOMMITSCURRENTREV,该命令只会生成2.6.9

但是,如果你在2.6.9之后做了一些提交(例如3),NUMCOMMITS将是3CURRENTREV将是缩写的最后提交哈希的7个字符(例如2597536):

2.6.9-3-g2597536

使用--tags开关可以实现相同的未注释标签:

git describe --tags 

答案 1 :(得分:1)

OP准备in the comments&#34;发布版本&#34;不是在回购中有二进制文件(交付),而是获取用于生成交付的版本。

仅仅{p> git tag并不合适,因为订单并不总是恰当的。

然而,正如我在&#34; How to sort git tags?&#34;中解释的那样,这将给出正确的顺序(使用git 2.0 +)

git tag -l --sort=refname "v*"
# or
git tag -l --sort=version:refname "v*"

v17
v16
...
v9
...
v1