go work 详解
· 阅读需 6 分钟
通俗的语言+实操代码,把 go work 和 go module 的区别、使用场景、实操步骤讲透,新手也能快速理解并上手。
一、先搞懂核心概念
1. Go Module(Go 模块)
go module 是 Go 1.11 引入的包管理工具,核心作用是:
- 为单个项目管理依赖(记录依赖版本、解决依赖冲突);
- 每个项目对应一个
go.mod文件,标识项目的模块名、Go 版本、依赖列表; - 本质是「单项目的依赖边界」,确保单个项目的依赖可复现。
2. Go Work(Go 工作区)
go work 是 Go 1.18 引入的多模块工作区工具,核心作用是:
- 让你在同一个工作目录下,同时开发多个相互依赖的 Go Module 项目;
- 无需频繁
go get/replace依赖,直接引用本地模块的最新代码; - 本质是「多模块的开发协作层」,解决多模块本地开发的痛点。
