该go mod
命令用于对模块执行操作。八个go mod
命令是:
download
将模块下载到本地缓存(GOPATH/pkg/mod/cache
)。可以使用查询请求特定的模块版本path@version
。当您要预加载依赖项时,通常使用它。要获得要下载的模块的更详细的概述,请使用-json
标记。go mod download [flags] [path]@[version]...
edit
用于编辑go.mod文件。它读取go.mod文件,然后将更改写入同一文件或另一个指定的文件。它对工具或脚本最有用。该命令不执行任何模块查找,因此确定与修改后的文件内容相关的任何错误均由您决定。使用此命令,您可以:-格式化go.mod(-fmt
)-更改模块路径(-module newPath
)-需要依赖项(-require=path@version
)-删除需要的依赖项(-droprequire=path@version
)-用另一个不同的依赖项替换依赖项(-replace oldpath@version=newpath@version
)-删除替换依赖项(-dropreplace=module@version
)-排除依赖项(-exclude=path@version
)-删除排除的依赖项(-dropexclude=path@version
)-更改Go版本(-go=version
)-打印go.mod的修改内容而不将结果写回到源go.mod(-print
)-以JSON格式打印go.mod的修改内容而不将结果写回源go.mod(-json
)go mod edit [flags] [target go.mod]
graph
打印模块需求图的文本版本,该文本版本列出了模块的直接和间接依赖关系。go mod graph
init
通过创建go.mod并使用模块路径,Go版本和依赖项列表填充它来初始化新模块。如果您不在GOPATH之外,或者不在存储库中,则需要提供模块路径,因为无法推断出该路径,如果没有该路径,此操作将失败。生成的go.mod将被写入当前目录。go mod init [module path]
tidy
确定缺少和未使用的模块依赖项,然后从go.mod和go.sum中添加或删除它们。使用该-v
标志可详细了解此命令的结果。go mod tidy [-v]
vendor
将模块的构建和测试依赖项添加到供应商目录。使用该-v
标志可详细了解此命令的结果。go mod vendor [-v]
verify
检查自下载以来,模块在源缓存中的依赖项是否已被修改。go mod verify
why
显示在主模块中如何以及在何处需要软件包或模块。它通过在模块的依赖关系图中向您显示模块与指定的程序包或模块之间的最短路径来实现此目的。默认情况下,参数被视为包。如果使用该-m
标志,则将它们视为模块。该-vendor
标志从结果中排除测试依赖性。go mod why [-m] [-vendor] packag