dubbo-go v3 版本 go module 踩坑记( 三 )
pseudo-version
是 v1.4.2 , 这正是因为 go 认为 replace 后的 dubbogo 依赖主版本是 v1 , 去查找了该主版本下的最新 tag , 并递增了 patch version
, 从而导致前后主版本不一致 , 当我们对版本路径加上 v3 后 , go 查找不到对应主版本下的 tag , 为我们自动生成了 v3.0.0 , 从而通过了 CI。 和 Java 不同 , go 其实是没有子模块概念的 。 即使有些时候 , 我们会看到有个 repo 里有多个 Go modules , 比如项目的根目录有一个 go.mod, 里面有些子目录里又有 go.mod。 这在 Go modules 被称为嵌套模块 , 而非父子模块 , 即两个模块没有任何关系 , 是相互独立的 。 那什么时候才需要单 repo 多模块呢?一般来说 , 碰到以下两种情况我们才会考虑使用单 repo 多模块的开发形式 。
- 某个嵌套模块变动非常频繁 , 需要经常发版 。
- 当中的嵌套模块仅仅依赖某个固定版本的根模块 。
go-import
和。go-import
的作用 , 是告诉 go get
去哪儿可以找到源码 , content 分为三部分:dubbo.apache.org/dubbo-go/v3
:这个项目的 module 声明 。
git
:使用的版本控制工具 。
<https://github.com/apache/dubbo-go>
:告诉 go get 这个项目应该去哪儿找源代码 。
go-source
的作用 , 则是给项目生成具体的 go doc
(现为 pkg.go.dev ) 文档 , 一共有 4 部分 , 前两部分和 go-import
一样 , 是该项目的 module 声明和版本控制工具 , 后两部分则分别起如下作用:<https://github.com/apache/dubbo-go/tree/3.0{/dir}>
:声明该项目的源代码所在位置 。
<https://github.com/apache/dubbo-go/blob/3.0{/dir}/{file}#L{line}>
:映射文档和代码 , 帮助我们在点击文档的目录树时 , 可以跳转到对应的具体内容 。
添加阿里妹(alimei6)备注【阿里技术】 , 即可领取Python、Java、数据库、运维等等阿里独家学习资料和福利!
- |【康哥日精进】第162篇:php版本过高引起ecshop报错和不显示验证码
- 英伟达|英伟达推出DLSS 2.3版本,并发布图像比较与分析工具
- 大疆|华为P50 Pro最新售价确认,全系跌至新低价,512GB版本更有诚意
- iphone13 pro|终于知道为什么懂的人都买iPhone13Pro了,256G版本太香了
- |发布不到2个月跌价300元,128G版本苹果新机重回低价
- 汽车|我的小米手机还挺耐用的,没有坏过一台,现在买pro版本的很够用
- 操作系统|应对华为?中兴发布全新版本国产操作系统
- harmonyos|Harmony OS用户已破亿!各大品牌陆续加入,明年首季推出3.0版本
- 苹果|iPhone13全系版本重回低价,没白等!最新售价已经确认!
- 荣耀|荣耀60系列遭曝光:分为三个版本,具体参数也跟着出炉了