Lecture

Git 관련 영어 표현

Git은 전 세계적으로 가장 많이 사용되는 버전 관리 시스템입니다.

버전을 관리하기 위해 특정 시점의 소스 코드를 저장하는데, 이때 저장된 내용을 커밋(commit)이라고 부릅니다.

커밋은 소스 코드의 변경 사항을 기록하는 중요한 작업으로, 커밋 메시지(commit message)를 작성하여 변경 사항을 설명합니다.

국내에 한정된 프로젝트를 개발한다면 커밋 메시지를 한글로 작성해도 무방합니다.

하지만 커리어를 위해 글로벌 오픈소스 프로젝트에 핵심 기여자(core contributor)로 참여하거나 해외 개발자와 협업하려면, 권장 사항에 따라 올바른 영어로 커밋 메시지를 작성해야 합니다.

다행히 영문 커밋 메시지를 작성하는 것은 영어로 기술 문서를 작성하거나 이메일을 작성하는 것에 비해 훨씬 쉽습니다.

상황마다 다른 커밋 메시지 작성법을 통일하기 위해 커밋 메시지는 컨벤셔널 커밋(conventional commits)이라는 관습이 전 세계적으로 통용되기 때문입니다.

본격적으로 영문 커밋 메시지 작성법에 대해 알아보기 전에, 커밋 메시지의 구조를 확인해 보겠습니다.


커밋 메시지의 구조

커밋 메시지는 subject(title), body, footer로 구분됩니다.

  • Subject : 커밋의 제목으로, 한 줄로 작성합니다.

  • Body : 커밋의 본문으로, 커밋의 목적과 변경 사항을 자세히 설명합니다.

  • Footer : 커밋의 바닥글로, 커밋 메시지와 관련된 이슈 및 참조를 작성합니다.

커밋 메시지 예시
git commit -m "feat: add new feature" -m "This commit adds a new feature to the project." -m "Related issue: #123" feat: add new feature This commit adds a new feature to the project. Related issue: #123

여기서 첫번쩨 줄은 커밋 메시지의 Subject, 두번째 줄은 Body, 세번째 줄은 Footer입니다.

일반적으로 실무에서는 커밋 메시지의 Subject만 작성하는 경우가 많으며, 상세한 설명이 필요한 경우에만 Body를 작성합니다.

Footer까지 작성하는 경우는 드물지만, 이슈 트래커와 연동되는 경우에는 Footer를 작성하는 것이 좋습니다.


Conventional Commits

conventional commits는 커밋 메시지의 형식을 통일하기 위한 규칙으로, 다음과 같은 형식으로 작성합니다.

conventional commits 형식
<type>[optional scope]: <description> [optional body] [optional footer]

conventional commits를 적용한 커밋 메시지 예시는 다음과 같습니다.

conventional commits 적용 커밋 메시지 예시
feat: add new feature docs: update README refactor: improve code quality

여기서 type은 커밋의 유형을 나타내며, 다음과 같은 값이 사용됩니다.

  • feat: 새로운 기능 추가
  • fix: 버그 수정
  • docs: 문서 수정
  • style: 코드 스타일 변경 (코드 변경 없음)
  • refactor: 코드 리팩토링 (기능 변경 없음)
  • perf: 성능 개선
  • test: 테스트 추가 또는 수정
  • chore: 기타 변경 사항 (빌드 스크립트 등)
  • build: 빌드 관련 변경 사항
  • ci: CI/CD 관련 변경 사항
  • revert: 이전 커밋 되돌리기
  • merge: 브랜치 병합
  • release: 배포 관련 변경 사항

Conventional Commits의 Subject 작성 규칙

conventional commits의 Subject는 다음과 같은 규칙을 따릅니다.

  • 동사 원형으로 시작한다.
  • 모든 단어를 소문자로 쓴다.
  • 문장 끝에 마침표를 생략한다.
  • a와 an 같은 관사를 생략한다.

이를 반영한 커밋 메시지 예시는 다음과 같습니다.

conventional commits Subject 작성 예시
fix: remove deprecated features 수정 권장되지 않는 기능 삭제 feat: add parameters to getImage 기능 getImage에 매개변수 추가 docs(readme): update build instructions 문서(readme): 빌드 지침 업데이트 chore: update npm dependencies to latest version 기타: npm 의존성 최신 버전으로 업데이트

지금부터 실무에서 자주 사용하는 Git 관련 영어 표현을 살펴보겠습니다.

Quiz
0 / 1

다음 중 Conventional Commits에서 'type'으로 사용되지 않는 것은 무엇인가요?

feat

fix

design

design

Lecture

AI Tutor

Design

Upload

Notes

Favorites

Help