go 1.16.4: go mod tidy的用途

一,查看帮助:

1,查看原始文档

liuhongdi@lhdpc:/data/go/mod3$ go help mod tidy
usage: go mod tidy [-e] [-v]

Tidy makes sure go.mod matches the source code in the module.
It adds any missing modules necessary to build the current module's
packages and dependencies, and it removes unused modules that
don't provide any relevant packages. It also adds any missing entries
to go.sum and removes any unnecessary ones.

The -v flag causes tidy to print information about removed modules
to standard error.

The -e flag causes tidy to attempt to proceed despite errors
encountered while loading packages.

See https://golang.org/ref/mod#go-mod-tidy for more about 'go mod tidy'.

2,说明:可以看到go mod tidy命令的作用:

添加需要用到但go.mod中查不到的模块,

删除未使用的模块

说明:刘宏缔的go森林是一个专注golang的博客,
网站:https://blog.imgtouch.com
原文: go 1.16.4: go mod tidy的用途 – 架构森林

说明:作者:刘宏缔 邮箱: 371125307@qq.com

二,演示:删除未使用的模块

1,查看go.mod的内容:

liuhongdi@lhdpc:/data/go/mod3$ more go.mod 
module mod3

go 1.16

require github.com/gin-gonic/gin v1.7.2 // indirect

2,安装gorm2

liuhongdi@lhdpc:/data/go/mod3$ go get -u gorm.io/gorm
go: downloading gorm.io/gorm v1.21.10
go: downloading github.com/jinzhu/inflection v1.0.0
go: downloading github.com/jinzhu/now v1.1.2
go get: added gorm.io/gorm v1.21.10

再度查看go.mod

liuhongdi@lhdpc:/data/go/mod3$ more go.mod 
module mod3

go 1.16

require (
        github.com/gin-gonic/gin v1.7.2 // indirect
        gorm.io/gorm v1.21.10 // indirect
)

可以看到gorm已添加到go.mod

3,执行tidy命令后再查看效果

liuhongdi@lhdpc:/data/go/mod3$ go mod tidy
go: downloading github.com/go-playground/assert/v2 v2.0.1
go: downloading gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405

再度查看go.mod

liuhongdi@lhdpc:/data/go/mod3$ more go.mod 
module mod3

go 1.16

require github.com/gin-gonic/gin v1.7.2

可以看到因为我们还未在代码中使用新添加的gorm2,

所以gorm2模块被go mod tidy命令移除了

三,演示:添加已使用但go.mod中不存在的模块:

1,手动从go.mod中删除gin模块的引用

liuhongdi@lhdpc:/data/go/mod3$ vi go.mod

完成后查看go.mod

liuhongdi@lhdpc:/data/go/mod3$ more go.mod
module mod3

go 1.16

2,执行tidy

liuhongdi@lhdpc:/data/go/mod3$ go mod tidy
go: finding module for package github.com/gin-gonic/gin
go: found github.com/gin-gonic/gin in github.com/gin-gonic/gin v1.7.2

再度查看go.mod

liuhongdi@lhdpc:/data/go/mod3$ more go.mod
module mod3

go 1.16

require github.com/gin-gonic/gin v1.7.2

因为我们在代码中使用了gin模块,
所以go mod tidy 自动为我们在go.mod添加上了刚才已被添加的gin模块

四,查看go的版本:

liuhongdi@lhdpc:/data/go/mod3$ go version
go version go1.16.4 linux/amd64

  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老刘你真牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值