gopm 包管理工具使用

[TOC]

介绍

go的各种包管理,在国内有加速效果

github地址:https://github.com/gpmgo/gopm
官方地址:https://gopm.io/
文档路径:https://github.com/gpmgo/docs/tree/master/zh-CN

gopm 使用

安装

go get -v -u github.com/gpmgo/gopm

使用

# 查看当前工程依赖
gopm list
# 显示依赖详细信息
gopm list -v
# 列出文件依赖
gopm list -t [file]
# 拉取依赖到缓存目录
gopm get -r xxx
# 仅下载当前指定的包
gopm get -d xxx
# 拉取依赖到$GOPATH
gopm get -g xxx
# 检查更新所有包
gopm get -u xxx
# 拉取到当前所在目录
gopm get -l xxx
# 运行当前目录程序
gopm run
# 生成当前工程的 gopmfile 文件用于包管理
gopm gen -v
# 根据当前项目 gopmfile 链接依赖并执行 go install
gopm install -v
# 更新当前依赖
gopm update -v
# 清理临时文件
gopm clean
# 编译到当前目录
gopm bin

gopm 下载存放缓存目录 $USER/.gopm/repos

.gopmfile

gopmfile 需放在项目根目录下,名称为 .gopmfile

这个文件可以通过生成

gopm gen

文件格式为

    [target]
    path = github.com/gpmgo/gopm

    [deps]
    github.com/codegangsta/cli = branch:master

    [res]
    include = conf|etc|public|scripts|templates
  • target -> path 指示项目名称或导入路径。
  • deps 节包含了特殊(非最新)版本的依赖。
  • res 在执行 gopm bin 命令时自动打包的资源。

包版本

有五种可能的包版本组合:

  • 空白:表示使用最新版本的依赖进行构建
  • /path/to/my/project:绝对或者相对的文件路径,例如:d:\projects\xorm
  • branch:<value>:固定分支,例如:branch:master
  • tag:<value>:指定标签,例如:tag:v0.9.0
  • commit:<value>:某个提交,例如:commit:6ffffe9 一般来说只需要 SHA 的前 7 个字母就可以确定一个提交

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 119,358评论 16 133
  • Git 基础 基本原理 客户端并不是只提取最新版本的文件快照,而是把代码仓库完整的镜像下来。这样一来,任何一处协同...
    __silhouette阅读 13,784评论 5 145
  • Git 命令行学习笔记 Git 基础 基本原理 客户端并不是只提取最新版本的文件快照,而是把代码仓库完整的镜像下来...
    sunnyghx阅读 3,087评论 0 11
  • 当孩子承受太长时间的电视强刺激之后,他就会对读书、讲课之类的弱刺激无感。 文/七彩霞衣 有的父母抱怨自己的孩子看不...
    七彩霞衣阅读 179评论 1 1
  • 浓眉乖唇花布衫, 痴目窗外意翩翩。 金屋箩筐心锁住, 围城深处寂寥寒。
    风筝_5c59阅读 196评论 43 24