소스 코드 관리

소스 코드 관리 팀은 소스 코드 그룹에 속하는 제품 카테고리의 모든 백엔드 측면을 담당합니다. 이는 Create 단계DevOps 라이프사이클에 해당합니다.

소스 코드 관리 팀은 Gitaly 및 코드 리뷰 팀과 인터페이스를 형성하며 Workhorse, GitLab Shell 및 GitLab Rails 세 개의 코드베이스를 다룹니다.

소스 코드 기능 참조

소스 코드 관리 그룹이 소유한 기능은 그룹 페이지별 기능에 나열되어 있습니다.

코드 소유자

소스 코드 관리는 코드 리뷰 그룹과 코드 소유자 속성을 공유합니다.

승인 규칙

Push 규칙

보호된 브랜치

보호된 브랜치 모델에 대한 자세한 내용은 코드 소유자 기술 참조 페이지에서 확인할 수 있습니다.

저장소

프로젝트 템플릿

Git LFS

기술 스택

GitLab Rails

Gitaly touch points

Gitaly는 Git 리포지토리에 대한 고수준 RPC 액세스를 제공합니다. 모든 GitLab 설치에 존재하며 Git 리포지토리 저장 및 검색을 조정합니다. Gitaly는 Gitaly를 서버로, Gitaly 클라이언트 또는 _Gitaly consumers_로 알려진 것과 함께 클라이언트-서버 아키텍처를 구현하고 있습니다. 여기에는 다음이 포함됩니다:

  • GitLab Rails
  • GitLab Shell
  • GitLab Workhorse

Gitaly Rails는 Gitaly RPC의 상대적인 API 엔드포인트를 제공합니다. 더 많은 정보는 Gitaly touch points를 참조하세요.

주석이 달린 Rails 소스 코드

:source_code_management 주석은 Rails 코드베이스에서 소스 코드 관리 팀에 속한 코드를 나타냅니다. 주석이 달린 객체들은 이 페이지오류 예산 대시보드에 제시되어 있습니다.

GitLab Workhorse

GitLab Workhorse는 GitLab의 스마트한 리버스 프록시입니다. 파일 다운로드, 파일 업로드, git push, git pullgit 아카이브 다운로드와 같은 “큰” HTTP 요청을 처리합니다.

Workhorse 자체는 기능이 아니지만, Workhorse 없이는 몇 가지 GitLab 기능이 효율적으로 작동하지 않습니다.

GitLab Shell

GitLab Shell은 GitLab의 Git SSH 세션을 처리하고 인가된 키 목록을 수정합니다. 더 많은 정보는 GitLab Shell 문서를 참조하세요.

gitlab-sshd를 만든 이유에 대해 알아보려면 블로그 글 우리가 왜 자체 SSHD 솔루션을 구현했는지를 참조하세요.