答案 0 :(得分:83)
Download and install packages and dependencies
用法:
go get [-d] [-f] [-t] [-u] [-v] [-fix] [-insecure] [build flags] [packages]
获取导入路径命名的软件包以及它们的下载 依赖。然后安装命名包,例如' go install'。
-d标志指示在下载软件包后停止;那 是,它指示不要安装包。
-f标志仅在设置了-u时有效,强制get -u不验证 每个包都已从源代码管理中签出 存储库由其导入路径隐含。这可能是有用的,如果 source是原始的本地分支。
-fix标志指示get在下载的上运行修复工具 解析依赖关系或构建代码之前的包。
-insecure标志允许从存储库中获取并解析 使用不安全方案(如HTTP)的自定义域。请谨慎使用。
-t标志指示get也下载所需的包 为指定的包构建测试。
-u标志指示get使用网络更新named 包及其依赖项。默认情况下,get使用网络 检查丢失的包但不使用它来查找更新 现有的包裹。
-v标志启用详细进度和调试输出。
Get也接受构建标志来控制安装。请参阅“帮助” 建立'
签出新包时,get会创建目标目录 GOPATH / src目录/。如果GOPATH包含多个条目,请获取 使用第一个。有关详细信息,请参阅:' go help gopath'。
签出或更新包时,查找分支或标签 与本地安装的Go版本匹配。最重要的 规则是,如果本地安装正在运行版本" go1",则获取 搜索名为" go1"的分支或标签。如果不存在这样的版本 检索包的默认分支。
当获取签出或更新Git存储库时,它也会更新 存储库引用的任何git子模块。
永远不会检出或更新存储在供应商目录中的代码。
有关指定包的详细信息,请参阅' go help packages'。
了解更多关于如何获得'找到要下载的源代码,请参阅' go 帮助importpath'。
本文描述了使用GOPATH进行管理时get的行为 源代码和依赖项。相反,如果正在运行go命令 模块感知模式,get标志和效果的细节变化,如 确实得到了帮助。请参阅帮助模块'并且'去帮助模块 - 获得'。
另见:go build,go install,go clean。
例如,显示详细输出
$ go get -v github.com/capotej/groupcache-db-experiment/...
github.com/capotej/groupcache-db-experiment (download)
github.com/golang/groupcache (download)
github.com/golang/protobuf (download)
github.com/capotej/groupcache-db-experiment/api
github.com/capotej/groupcache-db-experiment/client
github.com/capotej/groupcache-db-experiment/slowdb
github.com/golang/groupcache/consistenthash
github.com/golang/protobuf/proto
github.com/golang/groupcache/lru
github.com/capotej/groupcache-db-experiment/dbserver
github.com/capotej/groupcache-db-experiment/cli
github.com/golang/groupcache/singleflight
github.com/golang/groupcache/groupcachepb
github.com/golang/groupcache
github.com/capotej/groupcache-db-experiment/frontend
$
答案 1 :(得分:52)
首先,我们需要GOPATH
$GOPATH
是由其环境变量指定的文件夹(或文件夹集)。我们必须注意,这不是安装Go的$GOROOT
目录。
export GOPATH=$HOME/gocode
export PATH=$PATH:$GOPATH/bin
我们在计算机中使用~/gocode
路径来存储应用程序的源代码及其依赖项。 GOPATH
目录还将存储其包的二进制文件。
然后查看Go env
您的系统必须有$GOPATH
和$GOROOT
,以下是我的环境:
GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/elpsstu/gocode"
GORACE=""
GOROOT="/home/pravin/go"
GOTOOLDIR="/home/pravin/go/pkg/tool/linux_amd64"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"
现在,您运行download go package:
go get [-d] [-f] [-fix] [-t] [-u] [build flags] [packages]
获取下载并安装导入路径命名的软件包及其依赖项。有关详细信息,请查看here。