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