본문 바로가기
기타

[Convention] Commit Message Conventions

by bkuk 2023. 4. 13.

커밋 메시지와 관련된 요약된 원칙

  • 제목과 본문은 빈줄로 구분
  • 제목은 명령어 형태로 작성, 50자 이내로 제한
  • 제목에는 아래와 같은 접두사를 사용
    • feat 기능 추가
    • fix 버그 수정
    • docs 문서 업데이트
    • style 코드 스타일 변경
    • refactor 코드 리팩토링
    • test 테스트 코드 추가 또는 수정
    • chore 빌드, 배포 등의 작업
  • 본문은 변경 사항에 대한 자세한 설명 작성
  • 본문은 72자마다 줄바꿈, 한줄에는 80자 제한
  • 본문에는 변경 사항의 원인, 영향, 해결 방법 기술
  • 본문에는 "Closes #이슈번호" 형식으로 관련 이슈를 참조

 

제목 접두사 별 예시

여러 줄로 커밋 메시지를 작성하려고 하면, 줄바꿈이나 특수 문자('^' 등)가 올바르게 처리되지 않을 수 있음. 따라서 텍스트 편집기(메모장 등)에 작성 후 복사 후 붙여넣기를 진행하면 된다.

 

git commit -m "feat: 사용자 등록 기능 추가

새로운 사용자 등록 기능을 추가하였습니다.
- 사용자 이름, 이메일, 비밀번호를 입력받아 저장합니다.
- 입력 값의 유효성 검사를 추가하였습니다."

 

git commit -m "fix: 로그인 오류 수정

로그인 시 발생하는 오류를 수정하였습니다.
- 원인: 서버로 전달되는 요청 데이터 형식 오류
- 영향: 사용자가 로그인을 할 수 없는 상태
- 해결: 요청 데이터를 정확한 형식으로 전달하도록 수정하였습니다."

 

git commit -m "docs: API 문서 업데이트

사용자 API의 문서를 업데이트 하였습니다.
- 새로운 엔드포인트 및 파라미터를 추가하였습니다.
- API 사용 방법을 명확하게 설명하였습니다."

 

git commit -m "style: 코드 포맷팅 및 주석 수정

코드 포맷팅을 수행하고 주석을 수정하였습니다.
- 들여쓰기를 통일하였습니다.
- 불필요한 주석을 제거하였습니다."

 

git commit -m "refactor: 중복 코드 제거 및 변수명 변경

중복되는 코드를 제거하고 변수명을 명확하게 변경하였습니다.
- 함수를 재사용 가능하게 개선하였습니다.
- 변수명을 의미있게 변경하였습니다."

 

git commit -m "test: 로그인 기능에 대한 단위 테스트 추가

로그인 기능에 대한 단위 테스트를 추가하였습니다.
- 로그인 성공 및 실패에 대한 테스트 케이스를 작성하였습니다.
- 모의 객체(Mock)를 사용하여 테스트를 수행하였습니다."

 

git commit -m "chore: 프로젝트 빌드 설정 업데이트

프로젝트 빌드 설정을 업데이트 하였습니다.
- 빌드 도구 버전을 최선으로 업그레이드 하였습니다.
- 빌드 스크립트에 필요한 환경 변수를 추가"

 

 

참고자료 : https://gist.github.com/stephenparish/9941e89d80e2bc58a153