我们要求仅对带有 tag 的 commit 进行发版,这样做可以平滑的从 svn 切到 git。
现在要对最新的 commit 发版,此时用 git 打个 tag,再编译,把编译好的库和二进制一起打包发布
tag 可以是纯数字,这样就跟 svn 一致了
在本例中 LATEST_GIT_TAG 在构建时有四种情况
- 本地无修改,HEAD 就是 tag(用于发版)
- 本地有修改,HEAD 就是 tag(用于发版后的开发):
- 本地无修改,HEAD 不是 tag(内部打包)
- 本地有修改,HEAD 不是 tag(内部调试开发)
- 如果有修改,LATEST_GIT_TAG 会带 dirty 字样
- 如果 HEAD 不是 tag,LATEST_GIT_TAG 会带 HEAD 的 hash 值