如果使用git命令行工具,产生版本号?
Git describe
如果符合条件的tag指向最新提交则只是显示tag的名字
否则会有相关的后缀来描述该tag之后有多少次提交以及最新的提交commit id。
不加任何参数的情况下,git describe 只会列出带有注释的tag
$ git describe
v1.0.3-6-g0c2b1cf
1、6:表示自打tag v1.0.3以来有6次提交(commit)
2、g0c2b1cf:g 为git的缩写,在多种管理工具并存的环境中很有用处
3、0c2b1cf:7位字符表示为最新提交的commit id 前7位
复杂点的命令,就是多加入一些参数
$ git describe --tags --always --dirty="-dev"
v1.0.3-6-g0c2b1cf-dev
1、如果当前版本已经有tag则直接输出此tag名:v1.0.3
2、如果不是,则输出v1.0.3-6-g0c2b1cf,含义如上面所述
3、如果本地仓库有修改,则认为是dirty的,则追加-dev,表示是开发版:v1.0.3-6-g0c2b1cf-dev
网友评论