GoPM:Go语言的包管理利器

发表时间: 2024-05-13 10:30

介绍

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

-u 强制使用网络去更新包和它的依赖包

-v 显示执行的命令

使用

# 查看当前工程依赖

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

如:

C:\Users\xutao\.gopm\repos\github.com\lxn\win

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 个字母就可以确定一个提交