go module 如何只下载存储库子目录中的包?
How can go module only download package in a subdirectory of a repository?
我创建了一个名为 A 的模块并将其推送到我公司的私人仓库。
repo地址是xxx.com/inf/client.git,A module是子目录所以A module命名为xxx.com/inf/client.git/A
当我使用模块时,我将其导入到我的代码中
import (
"xxx.com/inf/client.git/A"
)
func main() {
A.XXX()
}
当我使用go build构建代码时,go module可以找到模块A并开始下载。但问题是与 A 同级别的子目录太多了,它们都会被下载,这是我没想到的。
有人可以帮忙吗?我只想下载 xxx.com/inf/client.git/A 而不下载 xxx.com/inf/client.git/B(C,D...) 因为它们根本没有被使用.
不,不支持。
如果出于某种原因您真的不想下载该模块中的其他代码,请在单独的存储库中创建一个单独的模块。
几乎没有任何理由为此创建一个单独的模块。它所做的只是节省几 kb 的磁盘 space,而且磁盘很便宜——通常比开发人员处理更多 repos/modules.
所花费的时间便宜得多
我创建了一个名为 A 的模块并将其推送到我公司的私人仓库。
repo地址是xxx.com/inf/client.git,A module是子目录所以A module命名为xxx.com/inf/client.git/A
当我使用模块时,我将其导入到我的代码中
import (
"xxx.com/inf/client.git/A"
)
func main() {
A.XXX()
}
当我使用go build构建代码时,go module可以找到模块A并开始下载。但问题是与 A 同级别的子目录太多了,它们都会被下载,这是我没想到的。
有人可以帮忙吗?我只想下载 xxx.com/inf/client.git/A 而不下载 xxx.com/inf/client.git/B(C,D...) 因为它们根本没有被使用.
不,不支持。
如果出于某种原因您真的不想下载该模块中的其他代码,请在单独的存储库中创建一个单独的模块。
几乎没有任何理由为此创建一个单独的模块。它所做的只是节省几 kb 的磁盘 space,而且磁盘很便宜——通常比开发人员处理更多 repos/modules.
所花费的时间便宜得多