[Git] Code Formatter

SungyunKim·2025년 6월 26일

develop

목록 보기
2/3

Code Formatter 란?

  • 코드 포매터(Code Formatter)는 개발자가 작성한 소스 코드를 미리 정해진 코딩 스타일(코딩 컨벤션)에 따라 자동으로 정렬하고, 들여쓰기, 공백, 괄호 위치, 줄바꿈 등 형식을 일관되게 맞춰주는 도구

코드 포매터의 주요 목적

  • 가독성 향상
  • 코드 스타일 통일
  • 비생산적인 반복작업 감소
  • 코드 리뷰 효율화

GitLab CI에 적용하기

  • 제한사항 : GitLab CI에서는 직접 Formatter를 적용할 수 없고, Formatter가 적용 되었는지 확인만 가능
  • 따라서 pre-commit hook 을 사용하여 local 환경에서 commit 전에 Formatter를 구축하고자 함

pre-commit 을 사용한 코드 포맷터 적용하기

  • git commit 명령을 입력하면 실제 커밋이 생성하기 전 hook이 먼저 실행하여, 코드에 대한 검사나 자동화 작업을 수행 할 수 있음
  • 주요 특징
    • 커밋 전에 코드 스타일 검사(lint), 포매팅, 테스트, 파일 검사 등 다양한 작업 자동화
    • pre-commit hook이 실패(비정상 종료)하면 커밋이 중단되어, 코드 품질이나 규칙 위반 방지
    • git commit --no-verify 옵션을 사용하면 일시적으로 hook 실행을 건너뛸 수 있음

pre-commit hook 사용 방법

  1. pip install pre-commit

  2. pip install black

  3. 프로젝트 루트에 .pre-commit-config.yaml 파일을 만들어 어떤 검사/포매터를 적용할지 정의

    # .pre-commit-config.yaml 예시
    repos:
      - repo: local
        hooks:
          - id: black
            name: black
            entry: black
            language: system
            types: [python]
  4. pre-commit install 명령으로 hook을 활성화하면, 이후 커밋 때마다 자동으로 설정된 작업이 실행됨

  5. 최초 적용시 수동으로 파일 검사 실시

    pre-commit run --all-files
profile
MedicalAI Researcher

0개의 댓글