InfoGrab DocsInfoGrab Docs

개발 스타일 가이드

GitLab 개발에 사용되는 편집기 설정, Lefthook, 데이터베이스, 언어별 스타일 가이드 등 개발 스타일 표준을 설명합니다.

편집기/IDE 스타일 표준화 # EditorConfig 를 사용하여 파일이 로컬에 저장되기 전 특정 스타일 표준을 자동으로 적용합니다. 일부 편집기 및 IDE는 기본적으로 자동으로 .editorconfig 설정을 적용합니다. 편집기나 IDE가 .editorconfig 를 자동으로 지원하지 않는 경우, 플러그인이 있는지 확인 해 보세요. 예를 들어, vim용 플러그인 이 있습니다. Lefthook을 사용한 커밋 전/푸시 전 정적 분석 # Lefthook 은 Git 커밋 또는 푸시 전에 커스텀 로직을 실행할 수 있도록 해주는 Git hooks 관리자입니다. GitLab은 Lefthook 설정( lefthook.yml )이 포함되어 있지만, 반드시 설치해야 합니다. lefthook.yml 이 체크인되어 있지만 Lefthook이 설치되기 전까지는 무시됩니다. Overcommit 제거 # 이전에는 Lefthook 대신 Overcommit을 사용했으므로, overcommit --uninstall 명령으로 먼저 제거하는 것이 좋습니다. Lefthook 설치 # Lefthook은 다양한 방법 으로 설치할 수 있습니다. 전역(예: Homebrew 또는 패키지 관리자를 통해)으로 설치하지 않고 GitLab 프로젝트에만 사용하고 싶다면, Ruby gem으로 설치할 수 있습니다: bundle install Lefthook 관리 Git hooks 설치: # If installed globally lefthook install # Or if installed via ruby gem bundle exec lefthook install Lefthook pre-push Git hook을 실행하여 Lefthook이 동작하는지 테스트합니다: # If installed globally lefthook run pre-push # Or if installed via ruby gem bundle exec lefthook run pre-push 이 명령은 Lefthook 버전과 출력이 포함된 실행 가능한 명령 목록을 반환해야 합니다. Lefthook 설정 # Lefthook은 다음의 조합으로 설정됩니다: lefthook.yml 의 프로젝트 설정. 모든 로컬 설정 . Lefthook 파일 자동 수정 # 브랜치에서 변경된 파일에 대해서만 자동 수정 기능이 있는 모든 린터를 실행하는 커스텀 lefthook 타깃이 있습니다. # If installed globally lefthook run auto-fix # Or if installed via ruby gem bundle exec lefthook run auto-fix Lefthook 일시적으로 비활성화 # Lefthook을 일시적으로 비활성화하려면 LEFTHOOK 환경 변수를 0 으로 설정할 수 있습니다. 예: LEFTHOOK=0 git push ... Lefthook hooks 수동 실행 # pre-commit , pre-push , auto-fix hooks를 수동으로 실행할 수 있습니다. 예: bundle exec lefthoo