Help us learn about your current experience with the documentation. Take the survey.
源代码 - Gitaly 触发点
远程过程调用(RPCs)
Gitaly 是对 git 二进制文件的一个封装。它使用 Go 远程过程调用(RPCs)来提供对存放 git 仓库的文件系统的受控访问。其他功能包括访问优化、缓存以及一种针对文件系统的分页形式。
《Gitaly 贡献初学者指南》 专注于对 Gitaly 进行更新,提供了许多理解 Gitaly 代码的见解。
从 GitLab 其他所有对 Gitaly 的访问都通过 Create: Source Code 端点进行:
Commit 模型
调用 Gitaly 后,Git commit 信息会存储在内存中。这些信息被 Ruby Commit 模型 所封装,而该模型又是 Gitlab::Git::Commit 的一个封装。
Commit 模型的行为类似于 ActiveRecord 对象,但它没有 PostgreSQL 后端。相反,它映射回 Gitaly RPCs。