Help us learn about your current experience with the documentation. Take the survey.

源代码管理

源代码管理团队负责 DevOps 生命周期中 创建阶段源代码组 下所有产品类别的后端方面。

源代码管理团队与 Gitaly 和代码审查团队协作,并在三个代码库中工作:Workhorse、GitLab Shell 和 GitLab Rails。

源代码功能参考

源代码管理组拥有的功能列在 按组分类的功能页面

代码所有者

源代码管理与代码审查组共同拥有代码所有者功能。

审批规则

推送规则

受保护的分支

有关受保护分支模型的详细信息可以在 代码所有者 技术参考页面中找到。

代码库

项目模板

Git LFS

技术栈

GitLab Rails

Gitaly 接触点

Gitaly 提供对 Git 仓库的高级 RPC 访问。 它存在于每个 GitLab 安装中,并协调 Git 仓库的存储和检索。 Gitaly 实现了客户端-服务器架构,其中 Gitaly 作为服务器,Gitaly 客户端(也称为 Gitaly 消费者)包括:

  • GitLab Rails
  • GitLab Shell
  • GitLab Workhorse

Gitaly Rails 提供了与 Gitaly RPC 相对应的 API 端点。更多信息请阅读 Gitaly 接触点

带注释的 Rails 源代码

:source_code_management 注释表示 Rails 代码库中哪些代码属于源代码管理组。 带注释的对象呈现在 源代码拥有对象 页面上,以及 错误预算仪表板

GitLab Workhorse

GitLab Workhorse 是 GitLab 的智能反向代理。它处理"大" HTTP 请求,如文件下载、文件上传、git pushgit pullgit 存档下载。

Workhorse 本身不是一个功能,但 GitLab 中有几个功能如果没有 Workhorse 就无法高效工作。

GitLab Shell

GitLab Shell 处理 GitLab 的 Git SSH 会话并修改授权密钥列表。 更多信息请参考 GitLab Shell 文档

要了解我们创建 gitlab-sshd 的原因,请阅读博客文章 为什么我们实现了自己的 SSHD 解决方案