Glide:Package Management for Golang
glide是golang的一个包管理工具。入门使用比较简单,使用过一段时间。随着第三方包增多,结构复杂后,发现对glide的理解并不深入,花时间整理下
一、项目结构
- $GOPATH/src/myProject (Your project)
|
|-- glide.yaml
|
|-- glide.lock
|
|-- main.go (Your main go code can live here)
|
|-- mySubpackage (You can create your own subpackages, too)
| |
| |-- foo.go
|
|-- vendor
|-- github.com
|
|-- Masterminds
|
|-- ... etc.
二、glide 安装
mac osx使用homebrew安装
brew install glide
使用脚本安装mac或者linux最新版本
curl https://glide.sh/get | sh
On Ubuntu Precise (12.04), Trusty (14.04), Wily (15.10) or Xenial (16.04)
使用ppa安装
sudo add-apt-repository ppa:masterminds/glide && sudo apt-get update sudo apt-get install glide
On Ubuntu Zesty (17.04) the package is called golang-glide.
二进制文件下载安装
通过go get 安装最新开发版本
go get github.com/Masterminds/glide.
glide常用命令
#初始化项目创建glide.yaml文件
glide init
glide create
#安装一个包到vendor/下
glide get github.com/nanjishidu/gomini
#安装一个包到vendor/下指定版本号
glide get github.com/nanjishidu/gomini#0.1
#--all-dependencie会下载所有关联的依赖包
# -s 删除所有版本控制,如.git
#-v 删除嵌套的vendor
glide get --all-dependencies -s -v github.com/nanjishidu/gomini
# 从glide.yaml文件删除一个包生成新的lock文件
glide rm github.com/nanjishidu/gomini
glide remove github.com/nanjishidu/gomini
#输出项目名称
glide name
#安装一个项目的依赖
glide isis
glide install
#更新项目依赖
glide up
glide update
#重新构建项目依赖
go rebuild
#列举项目中使用包
glide list
#以树的形式显示项目中包结构
glide tree
#清除glide缓存
glide cc
glide cache-clear
#全局参数 设置项目缓存目录默认用户根目录下.glide目录
--home value
#全局参数 设置YAML配置文件 (default: "glide.yaml")
--yaml value, -y value
#全局参数 打印帮助和版本信息
--help, -h
--version, -v