包管理器里

与npm yarn等类似,开始了解到的是glide,但是发现这个东西在win10-64bit下面有bug,准备自己编译一个,发现glide源码里依赖的cli版本还变了,按照源码get的cli,win10平台+go1.14.8编译又报了几个类型错误。于是改用golang的dep试试。

dep说明

项目地址
官方说明
官网文档

初步使用

  • 根据项目地址和go的版本下载相应的dep版本,这里go的版本要大于1.7
  • windows版本下载编译后的文件就是一个dep的exe
  • 把dep文件放到项目路径中,即工程目录下(%GOPATH%/bin),测试的程序我直接放到了目录里(%GOPATH%/src/xxx/)
  • 初始化工程使用dep init

说明

dep init

此命令执行后,会生成两个文件(Gopkg.lock/Gopkg.toml)和一个vendor目录

  • Gopkg.lock 是具体的定义文件,此文件不可修改。官方文档
  • Gopkg.toml 是依赖管理文件,可以生成也可以修改,类似于package.json这种文件。官方文档
  • vendor目录 是依赖管理目录,最优先加载的,类似与node_module这种

dep status

此命令执行后,显示当前项目中的依赖包

  • CONSTRAINT为Gopkg.toml中限定的版本
  • VERSION为当前vendor中的版本
  • REVISION为当前vendor中的修订号
  • LATEST为CONSTRAINT限定下github中能满足要求的最新版本

其他命令

# 依赖管理帮助
dep help ensure
# 添加一条依赖
dep ensure -add github.com/bitly/go-simplejson
# 这里 @= 参数指定的是 某个 tag
dep ensure -add github.com/bitly/go-simplejson@=0.4.3
# 添加后,先调用一下新加入的库,然后执行 确保 同步
dep ensure
# 同理建议使用
dep ensure -v
# 更新依赖
dep ensure -update -v
#  删除没有用到的 package
dep prune -v

声明

以上内容参考文章如下:

以上内容,如需转载请注明出处

posted on 2020-10-17 10:52  学业未成  阅读(222)  评论(0编辑  收藏  举报