소스 코드 관리

소스 코드 관리 팀은 소스 코드 그룹에 속하는 제품 범주의 모든 백엔드 측면에 책임을 지고 있으며, Create 단계DevOps 라이프사이클에서 소속됩니다.

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

소스 코드 기능 레퍼런스

소스 코드 관리 그룹이 소유한 기능은 그룹 페이지별로 나열됩니다.

코드 소유자

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

승인 규칙

푸시 규칙

보호된 브랜치

보호된 브랜치 모델에 대한 자세한 내용은 코드 소유자 기술 레퍼런스 페이지에서 찾을 수 있습니다.

리포지터리

프로젝트 템플릿

Git LFS

기술 스택

GitLab Rails

Gitaly touch points

Gitaly는 Git 리포지터리에 대한 고수준 RPC 액세스를 제공합니다. 모든 GitLab 설치에 있으며, Git 리포지터리 저장 및 검색을 조정합니다. Gitaly는 Gitaly를 서버로, Gitaly 소비자인 _Gitaly consumers_인 GitLab Rails, GitLab Shell, GitLab Workhorse를 포함한 Gitaly clients와 함께 클라이언트-서버 아키텍처를 구현합니다.

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

주석이 달린 Rails 소스 코드

:source_code_management 주석은 레일스 코드베이스의 소스 코드 관리 그룹에 속한 코드를 나타냅니다. 주석이 달린 객체는 이 페이지와 함께 오류 예산 대시보드에 표시됩니다.

GitLab Workhorse

GitLab Workhorse는 GitLab에 대한 스마트 리버스 프록시입니다. 파일 다운로드, 파일 업로드, git push, git pull, git 아카이브 다운로드 등 “대용량” HTTP 요청을 처리합니다.

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

GitLab Shell

GitLab Shell은 GitLab을 위해 Git SSH 세션을 처리하고 승인된 키 디렉터리을 수정합니다. 더 많은 정보는 GitLab Shell 문서를 참조하세요.

gitlab-sshd를 만드는 이유에 대해 알아보려면 블로그 게시물 왜 우리는 고유의 SSHD 솔루션을 구현했는지를 읽어보세요.