一直用golang写业务代码,最近改动升级项把common module的version升级的v2,结果尴尬了,于是查了下文档,随手记录下v2.x及以后得版本的使用方法。
golang中module的版本管理分路径和版本号两部分,路径是go.mod
中开始module
后面定义的, 而version是按照git tag获取的,两部分组合在一起决定了一个唯一的版本。
PS:上面描述的version只是
go.mod
中通用的描述,其他如果没有tag,或使用commit以及时间组成一个唯一识别符等其他的情况,可以去文档详细了解
v2以下(v0/v1)
1 | $ cat go.mod |
v2.x及以上
区别于v1的版本,v2.x及以后得版本,都需要path和version匹配,及大版本需要在path中体现。
1 | $ cat go.mod |
PS: v2.x以上的其他版本都一样,path必须以大版本好结束,如
github.com/micro/go-micro/v3 v3.0.0