InfoGrab DocsInfoGrab Docs

소스 코드 관리

Source Code Management 팀의 백엔드 구조, 담당 기능, GitLab Rails·Workhorse·Shell 기술 스택을 설명합니다.

Source Code Management 팀은 DevOps 라이프사이클 의 Create stage 에 속하는 Source Code 그룹 의 모든 백엔드 측면을 담당합니다. Source Code Management 팀은 Gitaly 팀 및 Code Review 팀과 협력하며, Workhorse, GitLab Shell, GitLab Rails의 세 가지 코드베이스에 걸쳐 작업합니다. 소스 코드 기능 참조 # Source Code Management 그룹이 소유한 기능은 Features by Group Page 에 나열되어 있습니다. Code Owners # Source Code Management는 Code Review 그룹과 Code Owners 소유권을 공유합니다. 기능 홈페이지 개발자 참조 승인 규칙 # 승인 규칙 Push 규칙 # Push 규칙 개발 가이드라인 보호된 브랜치 # 보호된 브랜치 모델에 대한 자세한 내용은 Code Owners 기술 참조 페이지에서 확인할 수 있습니다. 리포지터리 # 프로젝트 리포지터리 스토리지 이동 프로젝트 템플릿 # 커스텀 그룹 수준 프로젝트 템플릿 개발 가이드라인 Git LFS # Git LFS 개발 가이드라인 기술 스택 # GitLab Rails # Gitaly 터치 포인트 # Gitaly 는 Git 리포지터리에 대한 고수준 RPC 접근을 제공합니다. Gitaly는 모든 GitLab 설치에 존재하며 Git 리포지터리 스토리지 및 검색을 조정합니다. Gitaly는 Gitaly를 서버로, Gitaly 컨슈머 라고도 불리는 Gitaly 클라이언트들을 포함하는 클라이언트-서버 아키텍처를 구현합니다. 클라이언트에는 다음이 포함됩니다: GitLab Rails GitLab Shell GitLab Workhorse Gitaly Rails는 Gitaly RPC의 대응점인 API 엔드포인트를 제공합니다. 자세한 내용은 Gitaly 터치 포인트 를 참조하세요. 주석이 달린 Rails 소스 코드 # :source_code_management 주석은 Rails 코드베이스에서 Source Code Management 그룹에 속하는 코드를 나타냅니다. 주석이 달린 객체는 Source Code 소유 객체 페이지와 Error Budgets 대시보드 에서 확인할 수 있습니다. GitLab Workhorse # GitLab Workhorse 는 GitLab을 위한 스마트 역방향 프록시입니다. 파일 다운로드, 파일 업로드, git push , git pull , git 아카이브 다운로드와 같은 "대용량" HTTP 요청을 처리합니다. Workhorse 자체는 기능이 아니지만, GitLab에는 Workhorse 없이는 효율적으로 작동하지 않을 여러 기능이 있습니다. GitLab Shell # GitLab Shell은 GitLab의 Git SSH 세션을 처리하고 인가된 키 목록을 수정합니다. 자세한 내용은 GitLab Shell 문서 를 참조하세요. gitlab-sshd 를 만들게 된 이유에 대해서는 블로그 포스트 Why we imple