git describe --tags --long为hash添加了字符?

时间:2017-10-09 13:28:48

标签: git

git rev-parse --short HEAD输出:

6aa3158a

git describe --tags --long输出:

2.3.4-rck1-0-g6aa3158a

我看到后一个命令在提交哈希中添加了g。这是为什么?

2 个答案:

答案 0 :(得分:1)

根据--long {/ 1}},这是git-describe(1)的记录行为。

   --long
       Always output the long format (the tag, the number of commits and
       the abbreviated commit name) even when it matches a tag. This is
       useful when you want to see parts of the commit object name in
       "describe" output, even when the commit in question happens to be a
       tagged version. Instead of just emitting the tag name, it will
       describe such a commit as v1.2-0-gdeadbee (0th commit since tag
       v1.2 that points at object deadbee....).

稍后在同一文档中解释为什么它将g前缀添加到哈希:

  

" g"前缀代表" git"并用于描述   软件版本取决于管理软件的SCM   用。这在人们可能使用不同的环境中很有用   的SCM。

答案 1 :(得分:1)

来自man git-describe

  

" g"前缀代表          " GIT中"并用于描述软件的版本          取决于管理软件的SCM。这在一个有用的          人们可能使用不同SCM的环境。