Git go模块如何只能下载存储库子目录中的包?

Git go模块如何只能下载存储库子目录中的包?,git,go,go-modules,Git,Go,Go Modules,我创建了一个名为a的模块,并将其推送到公司的私有回购协议中 repo的地址是xxx.com/inf/client.git,模块是一个子目录,因此模块名为xxx.com/inf/client.git/A 当我使用模块时,我会将其导入到代码中 import ( "xxx.com/inf/client.git/A" ) func main() { A.XXX() } 当我使用go build来构建代码时,go模块可以找到模块A并开始下载。但问题是,有这么多的子目录的同一级别与A,他们

我创建了一个名为a的模块,并将其推送到公司的私有回购协议中

repo的地址是xxx.com/inf/client.git,模块是一个子目录,因此模块名为xxx.com/inf/client.git/A

当我使用模块时,我会将其导入到代码中

import (
    "xxx.com/inf/client.git/A"
)
func main() {
    A.XXX()
}
当我使用go build来构建代码时,go模块可以找到模块A并开始下载。但问题是,有这么多的子目录的同一级别与A,他们都将被下载,这是我不期望的


有人能帮忙吗?我只想下载xxx.com/inf/client.git/A而不下载xxx.com/inf/client.git/B(C,D…),因为它们根本不被使用。

不,这是不受支持的

如果出于某种原因,您确实不想下载该模块中的其他代码,请在单独的repo中创建一个单独的模块


实际上,没有任何理由为此创建单独的模块。它所能做的就是节省几kb的磁盘空间,而且磁盘很便宜——通常比开发人员处理更多回购/模块所需的时间要便宜得多。

请仔细阅读如何编写Go代码并坚持下去。停止使用像client.git这样疯狂的名字。另外:只能克隆整个回购协议。你想做什么是不可能的。嗨@Volker这些名字只是为了说明。我在实践中不使用这样的名字