typora/note/Go/GoModule.md
2024-12-12 10:48:55 +08:00

26 lines
1.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

### 语义导入版本
- 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)