首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用go get导入特定版本的包?

如何使用go get导入特定版本的包?
EN

Stack Overflow用户
提问于 2014-07-21 05:28:02
回答 6查看 177K关注 0票数 129

来自Node环境的我过去常常通过告诉npmpackage.json或甚至直接从控制台安装特定版本的供应商库来将该版本的库安装到项目文件夹(node_modules)中,如下所示:

代码语言:javascript
复制
$ npm install express@4.0.0

然后,我使用以下命令在我的项目中导入该包的版本:

代码语言:javascript
复制
var express = require('express');

现在,我想对go做同样的事情。我该怎么做呢?可以安装特定版本的包吗?如果是这样,使用集中式$GOPATH,我如何导入一个版本而不是另一个版本?

我会这样做:

代码语言:javascript
复制
$ go get github.com/wilk/uuid@0.0.1
$ go get github.com/wilk/uuid@0.0.2

但是,我如何才能在导入过程中有所作为呢?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2018-08-23 14:50:14

Go 1.11将有一个称为go模块的功能,你可以简单地添加一个依赖于一个版本。请按照以下步骤操作:

代码语言:javascript
复制
go mod init .
go mod edit -require github.com/wilk/uuid@0.0.1
go get -v -t ./...   
go build
go install 

以下是有关该主题的更多信息- https://github.com/golang/go/wiki/Modules

票数 62
EN

Stack Overflow用户

发布于 2015-09-17 20:43:36

您可以使用git checkout获取特定版本,并使用此版本构建您的程序。

示例:

代码语言:javascript
复制
export GOPATH=~/
go get github.com/whateveruser/whateverrepo
cd ~/src/github.com/whateveruser/whateverrepo
git tag -l
# supose tag v0.0.2 is correct version
git checkout tags/v0.0.2
go run whateverpackage/main.go
票数 28
EN

Stack Overflow用户

发布于 2015-09-07 20:43:29

从Go 1.5开始,"vendor experiment"可以帮助你管理依赖项。从Go 1.6开始,这不再是一个实验。还有some other options on the Go wiki.

编辑:正如在this answer中提到的,gopkg.in是固定github依赖关系1.5之前版本的一个很好的选择。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24855081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档