Go包管理工具Glide
Go get
Go 语言原生包管理一般用go get
但get 子命令管理依赖有很多大缺陷:
- 能拉取源码的平台很有限,绝大多数依赖的是 github.com
- 不能区分版本,以至于令开发者以最后一项包名作为版本划分
- 依赖 列表/关系 无法持久化到本地,需要找出所有依赖包然后一个个 go get
- 只能依赖本地全局仓库(GOPATH/GOROOT),无法将库放置于局部仓库($PROJECT_HOME/vendor)
Glide
Go有很多包管理工具,如godep、govendor、glide、gvt、gopack等。
Glide目前比较受关注。 几大主要功能:
- 持久化依赖列表至配置文件中,包括依赖版本(支持范围限定)以及私人仓库等
- 持久化关系树至 lock 文件中(类似于 yarn 和 cargo),以重复拉取相同版本依赖
- 兼容 go get 所支持的版本控制系统:Git, Bzr, HG, and SVN
- 支持 GO15VENDOREXPERIMENT 特性,使得不同项目可以依赖相同项目的不同版本
- 可以导入其他工具配置,例如: Godep, GPM, Gom, and GB
安装
1 | go get github.com/Masterminds/glide |
验证
1 | glide |
响应
1 | NAME: |
常用命令
初始化
1 | glide init |
安装依赖
1 | glide install |
升级版本
1 | glide up |
下载依赖
1 | glide get |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 螃蟹壳!