完全删除使用“go get”安装的软件包?

我正在使用 Go 1.13.1,最新版本。

我正在尝试从 GitHub 中完全删除随我安装的软件包go get。这go clean -i <PACKAGE_NAME>似乎不起作用,因为至少有文件分布在这些目录中:

~/go/pkg/mod/github.com/<PACKAGE_NAME>
~/go/pkg/mod/cache/download/github.com/<PACKAGE_NAME>
~/go/pkg/mod/cache/download/sumdb/sum.golang.org/lookup/github.com/<PACKAGE_NAME>

有没有一种方法可以清洁所有内容而无需手动删除所有内容?


慕运维8079593
浏览 393回答 2
2回答

芜湖不芜

目前不支持此功能。如果您考虑一下:可能当前模块不再需要它,但您的系统上可能还有其他(不相关)模块仍然需要它。模块缓存在系统上的所有模块之间“共享”;它可以共享,因为依赖项是版本化的,如果两个不相关的模块引用模块/包的相同版本,则它是相同的并且可以共享。最接近的是go cleanwith&nbsp;-modcache,但这会删除整个模块缓存:-modcache 标志导致 clean 删除整个模块下载缓存,包括版本化依赖项的解压源代码。

倚天杖

我们可以GOPATH轻松地删除一个或多个包的缓存。删除项目根文件夹中的 go.sum 文件。删除vcs中的文件夹GOPATH/pkg/mod/cache。删除库中的所有文件GOPATH/pkg/mod/cache/download/{Package_name}/{library_name}或删除属于特定版本和更新list文件的文件 ({version_to_delete}.*)。删除 中特定版本的库GOPATH/pkg/mod/{Package_name}/{library_name}@{version}。go mod tidy现在,在项目根文件夹中运行。它应该从互联网下载库,而不是从本地缓存重新生成。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go