typora/note/Go/GoModule.md

26 lines
1.1 KiB
Markdown
Raw Permalink Normal View History

2024-12-11 21:48:55 -05:00
### 语义导入版本
- Semantic Import Versioning
- go.mod 的 require 段中依赖的版本号,都符合 vX.Y.Z 的格式
- 一个符合 Go Module 要求的版本号,由前缀 v 和一个满足语义版本规范的版本号组成
- 借助于语义版本规范Go 命令可以确定同一 module 的两个版本发布的先后次序,而且可以确定它们是否兼容
- Go Module 规定:如果同一个包的新旧版本是兼容的,那么它们的包导入路径应该是相同的
#### 语义版本号组成
- 主版本
- 次版本
- 补丁版本
![](https://blog-heysq-1255479807.cos.ap-beijing.myqcloud.com/blog/wiki/go/yuyibanben.png)
### 最小版本选择
- Minimal Version Selection
- 项目之间出现依赖同一个包但是不同版本的情况
- go mod 选择依赖所有版本的最小的那个版本
- go mod 不会选择最新的1.7.0版本而是选择1.3.0 版本
![](https://blog-heysq-1255479807.cos.ap-beijing.myqcloud.com/blog/wiki/go/zuixiaoyilai.png)
### GO111MODULE配置值
- on 开启
- off 关闭
- auto 编译器判断
![](https://blog-heysq-1255479807.cos.ap-beijing.myqcloud.com/blog/wiki/go/go111module.jpeg)