최근에 프로젝트를 하다가 git commit convention이라는 걸 알게 되었다.
그전에는 그냥 내가 한 '페이지 명 + 처리 한 것' 이렇게 commit messeage 를 작성 했었는데 작업자가 10명, 100명 이렇게 늘어나게 되면 유일한 식별자를 구별하기 어려워 진다는 단점이 있어 잘 지켜야 한다고 한다.
[conventionalcommits.org]
아래는 커밋 메세지 컨벤션 관련하여 자세하게 적힌 사이트다.
위의 사이트를 기반으로 commit convention을 작성하는 방법에 대해 알아보자
[commit type]
그 전에 우리는 여러가지의 commit type을 알아야 한다.
- feat : 새로운 기능 추가
- fix : 버그 수정
- docs : 문서 작성
- style : 코드 변경 없는 단순 수정(오타 수정, 세미콜론 추가 등)
- refactor : 리팩토링
- test : 테스트 코드
- chore : 유지보수 및 빌드
[기본 포맷]
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
<type> 은 위에 있던 commit type 에 해당 한다.
<description> 은 변경 된 코드에 관한 짧은 요약 같은 것이다.
[body] 는 선택사항으로 <description> 에는 기재하지 못한 조금 더 상세한 설명을 써야 할 때 사용한다.
[footer] 도 선택사항으로 코드 작업과 관련 된 이슈 번호 또는 참조 링크 같은 걸 첨부하는데 사용 된다. 특정 작업이나 이슈를 해결 한 경우에는 'Closes #이슈 번호' 와 같은 형태로 작성 하여 마무리 한다.
[커밋 메세지 예시]
feat: 사용자가 회원가입할 수 있는 기능 추가
- 이메일 인증을 통한 회원가입 기능 구현
- 회원가입 시 비밀번호 암호화 추가
- 회원가입 성공 시 환영 이메일 발송
Refs: #123
fix: 이미지 업로드 시 발생하는 버그 수정
- 파일 확장자 체크 로직 수정
- 파일 크기 제한 관련 에러 메시지 추가
Closes: #456
style: 코드 포맷팅 및 불필요한 공백 제거
- 전체 코드에서 불필요한 공백 제거
- 함수 간격 조정 및 들여쓰기 수정
style: 코드 포맷팅 및 불필요한 공백 제거
- 전체 코드에서 불필요한 공백 제거
- 함수 간격 조정 및 들여쓰기 수정
test: 로그인 기능 테스트 추가
- 정상 로그인 및 실패 시나리오 테스트 케이스 작성
- JWT 토큰 발급 테스트 추가
'git' 카테고리의 다른 글
[git clone] 깃 클론 중 리파지토리 없음 remote: Repository not found. (0) | 2024.08.23 |
---|---|
Git Commit 후 Push 안됌 (feat. repository not found / git-receive-pack not permitted 오류 ) (0) | 2024.07.23 |
github repository - flutter 연동 (0) | 2024.07.05 |
error: failed to push some refs to (0) | 2024.06.27 |
Git Untracked Files Prevent Merge 오류 해결 (1) | 2024.05.31 |