Go Module 未来的趋势

栏目: Go · 发布时间: 6年前

内容简介:Modules是Go 1.11中新增的实验性功能,基于vgo演变而来,是一个新型的包管理工具。要使用go module,首先要设置GO111MODULE=onGO111MODULE=off,go命令行将不会支持module功能,寻找依赖包的方式将会沿用旧版本那种通过vendor目录或者GOPATH模式来查找。

Go Modules介绍

Modules是 Go 1.11中新增的实验性功能,基于vgo演变而来,是一个新型的包管理工具。

GO111MODULE

要使用go module,首先要设置GO111MODULE=on

GO111MODULE=off,go命令行将不会支持module功能,寻找依赖包的方式将会沿用旧版本那种通过vendor目录或者GOPATH模式来查找。

GO111MODULE=on,go命令行会使用modules,而一点也不会去GOPATH目录下查找。

GO111MODULE=auto,默认值,go命令行将会根据当前目录来决定是否启用module功能。这种情况下可以分为两种情形:当前目录在GOPATH/src之外且该目录包含go.mod文件,或者当前文件在包含go.mod文件的目录下面。

在Go 1.11-1.12 默认都是auto,据可靠消息说1.13要修改为默认启动。

Go module 命令

download download modules to local cache (下载依赖的module到本地cache))

edit edit go.mod from tools or scripts (编辑go.mod文件)

graph print module requirement graph (打印模块依赖图))

init initialize new module in current directory (再当前文件夹下初始化一个新的module, 创建go.mod文件))

tidy add missing and remove unused modules (增加丢失的module,去掉未用的module)

vendor make vendored copy of dependencies (将依赖复制到vendor下)

verify verify dependencies have expected content (校验依赖)

why explain why packages or modules are needed (解释为什么需要依赖)

替换

replace (  golang.org/x/crypto v0.0.0-20180820150726-614d502a4dac => github.com/golang/crypto v0.0.0-20180820150726-614d502a4dac  golang.org/x/net v0.0.0-20180821023952-922f4815f713 => github.com/golang/net v0.0.0-20180826012351-8a410e7b638d  golang.org/x/text v0.3.0 => github.com/golang/text v0.3.0  )

go get 升级

运行 go get -u 将会升级到最新的次要版本或者修订版本(x.y.z, z是修订版本号, y是次要版本号)

运行 go get -u=patch 将会升级到最新的修订版本

运行 go get package@version 将会升级到指定的版本号version


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

游戏测试精通

游戏测试精通

舒尔茨 / 周学毛 / 清华大学出版社 / 2007-9 / 48.00元

《游戏测试精通》来自3位在游戏测试领域都有着极其丰富经验的专业人员,是亚马逊“五星级”畅销书,也是国内第一本专业级游戏测试经典之作,不仅内容全面、实例丰富,而且讲解透彻、可读性强,并提供多个资源下载和技术支持站点。现如今,游戏产业发展迅猛,游戏测试已成为游戏产品、游戏软件、游戏程序设计与开发不可或缺的环节。《游戏测试精通》主要揭示了如何将软件测试的专业方法运用到游戏产业中,全面涵盖了游戏测试的基本......一起来看看 《游戏测试精通》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换