专有名词清单
编译约束: 在编译包时是否使用 Go 源文件的条件。编译约束可以通过文件名后缀 (例如, foo_linux_amd64.go
) 或者使用编译约束声明 (例如, // +build linux,amd64
) 进行表示。详见 编译约束.
编译列表: 模块版本列表将被用作编译命令,例如 go build
, go list
, 或 go test
。编译列表可以从主 Module 的 go.mod
文件 和 go.mod
文件确定需要引入模块的最低版本。编译列表包含了所有模块的 Module 图 , 不仅仅是那些与之相关的特定的命令。
规范版本: 一个正确的格式化的版本 不使用元数据后缀进行编译,而不是 +incompatible
。例如, v1.2.3
是一个规范版本,而 v1.2.3+meta
却不是。
当前模块: 主 Module 的同义词。
废弃的模块: 一个模块不在被它的作者维护 (尽管主要版本被视为不同的模块)。 一个废弃的模块在最新版本的 go.mod
文件中会被标记为废弃声明.
直接依赖: 一个包它的路径中在.go
源文件中出现了对(另)一个包的 import
依赖或者是在测试的主 Module 中,又或这个模块包含了一个这样的包。 (比较 间接依赖。)
直接模式:导致 go
命令直接从 a 下载模块的环境变量的设置版本控制系统,而不是 Module 代理。GOPROXY=direct
为所有模块做到这一点。GOPRIVATE
和 GONOPROXY
为匹配模式列表的模块执行此操作。
go.mod
文件:定义模块路径,要求和其他元数据的文件。出现在 Module 的根目录。请参阅 go.mod
文件的部分。
导入路径:用于在 GO 源文件中导入包的字符串。与包路径同义。
间接依赖项:通过包或在主 Module 中进行包裹或测试的包裹,但其路径不会出现在任何内容中 import
声明主模块;或 Module 图中出现的模块但不提供主模块直接导入的任何包。 (比较直接依赖性。)
Lazy 模块加载: Go 1.17 的更改,避免加载 Module 图,用于在模块中不需要它的命令指定 go 1.17
或更高。请参阅 Lazy 模块加载。
主模块:调用 go
命令的模块。主模块由当前目录或父目录中的 go.mod
文件定义。请参阅 Modules,包和版本。
主要版本:语义版本中的第一个数字 (v1.2.3
中的 1
)。在更改不兼容的释放中,必须递增主要版本,并且次要和补丁版本必须设置为 0. 具有主要版本 0 的语义版本被认为是不稳定的。
主要版本子目录:符合模块的主要版本后缀匹配模块的版本控制存储库中的子目录。例如,使用根路径,在存储库中的模块 example.com/mod/v2
,example.com/mod
可以在存储库根目录或主要版本子目录 v2
中定义。请参见存储库中的 Module 目录。
主要版本后缀:与主要版本号匹配的模块路径后缀。例如,/v2
在 example.com/mod/v2
中 >。在 v2.0.0
中需要主要版本后缀,稍后是必需的,并且不允许在早期版本中允许。请参阅主要版本后缀部分。
最小版本选择 (MVS):用于确定将在构建中使用的所有模块版本的算法。有关详细信息,请参阅最小版本选择部分。
次要版本:语义版本中的第二个数字 (v1.2.3
中的 2
)。在具有新的,向后兼容功能的版本中,必须递增次要版本,并且必须将补丁版本设置为 0。
模块:释放,版本化和分发的包集合。
模块缓存:存储下载模块的本地目录,位于 GOPATH/pkg/mod
. 中。请参见 Module 缓存。
模块图:模块要求的定向图,植根于主 Module。图中的每个顶点都是模块;每个边缘是来自 go.mod
文件中的 require
语句的一个版本 (受 replace
和 exclude
在主模块中的语句中 go.mod
文件。
模块图修剪:通过省略指定 Go 1.17
或更高的模块的传递依赖性,降低模块图的大小的 Go 1.17 的变化。见 Module 图修剪。
模块路径:标识模块的路径,并充当模块中包导入路径的前缀。例如,“golang.org/x/net”
。
模块代理:实现 GOPROXY
协议的 web 服务器。go
命令下载版本信息,go.mod
文件,以及模块从模块代理的 zip 文件。
模块根目录:包含 go.mod
文件的目录,该文件定义模块。
模块子目录: Module 路径的部分之后存储库根路径 ,其指示定义了模块的子目录。非空的时,模块子目录也是语义版标签的前缀。如果有一个,则模块子目录不包括主要版本后缀,即使模块是在主要版本子目录中。请参见 Module 路径。
包:将在一起编译的同一目录中的源文件集合。在 Go 语言规范中,请参阅包部分。
包路径:唯一标识包的路径。包路径是 Module 路径与模块中的子目录一起加入。例如,「golang.org/x/net/html」
是「golang.org/x/net/htmlgolang.org/x/net」
中的程序包中的程序包的包路径。 「HTML」
子目录。 导入路径的同义词。
补丁版本:语义版本中的第三个数字 (3``v1.2.3
)。在没有更改模块的公共接口的版本中,必须递增修补程序版本。
预发布版本:带有划线划线的版本,后跟一系列点分隔的标识符,例如补丁版本,例如 v1.2.3-beta4
。预发布版本被认为是不稳定的,并且不假设与其他版本兼容。在相应的发布版本之前进行预发布版本:v1.2.3-pre
之前 v1.2.3
。另请参见发布版本。
pseudo-version:从版本控制系统中编码修订标识符 (例如 git 提交哈希) 和时间戳的版本。例如,V0.0.0-20191109021931-DAA7C04131F5
。用于与非 Module 存储库的兼容性以及在标记版本不可用的其他情况下。
发布版本:没有预发布后缀的版本。例如,v1.2.3
,不是 v1.2.3- pre
。另请参见预发布版本。
存储库根路径: Module 路径的部分,它对应于版本控制存储库的根目录。请参见 Module 路径。
撤回版本:不应该依赖的版本,要么是因为它过早出版,或者因为在发布后发现了严重的问题。请参阅 retract
指令。
语义版标记:版本控制存储库中的标记将版本映射到特定修订版。请参阅映射版本以提交。
所选版本: 最小版本选择选择的给定模块的版本。所选版本是 Module 图中找到的模块路径的最高版本。
vendor 目录:名为 vendor
的目录,其中包含来自其他模块所需的软件包来构建主模块中的包。维护 go mod vendor
。见 Vending。
版本:模块的不可变快照的标识符,写为字母 v
,后跟语义版本。请参阅 Versions 部分。
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。
推荐文章: