1. 협업 시 유용한 커밋 메시지 유형
협업을 하는 프로젝트에서는 커밋 메시지를 일관되게 작성하는 것이 매우 중요합니다. 일관된 커밋 메시지는 변경 사항을 명확히 이해할 수 있게 하고, 코드 리뷰나 디버깅 시에도 큰 도움이 됩니다. 이번 포스트에서는 협업 시 자주 사용하는 커밋 메시지 유형과 규칙을 설명하겠습니다.
2. 커밋 메시지 유형 요약
유형 설명 예시
feat | 새로운 기능 추가 | feat: 사용자 로그인 기능 추가 |
fix | 버그 수정 | fix: 사용자 프로필 업데이트 오류 수정 |
docs | 문서 변경 | docs: API 사용법 문서 추가 |
style | 코드 스타일 변경 | style: 코드 포맷팅 수정 |
refactor | 코드 리팩토링 | refactor: 사용자 서비스 로직 리팩토링 |
perf | 성능 개선 | perf: 데이터베이스 쿼리 성능 개선 |
test | 테스트 추가 및 수정 | test: 사용자 서비스 단위 테스트 추가 |
build | 빌드 관련 작업 | build: Gradle 버전 업데이트 |
ci | 지속적 통합 설정 | ci: GitHub Actions 워크플로우 추가 |
chore | 기타 작업 | chore: npm 패키지 업데이트 |
revert | 이전 커밋 되돌리기 | revert: "feat: 사용자 로그인 기능 추가" |
1. feat: 새로운 기능 추가
새로운 기능을 추가할 때 사용하는 커밋 유형입니다. 기능 개발 시 가장 많이 사용되는 커밋 메시지 유형 중 하나입니다.
예시:
feat: 사용자 로그인 기능 추가
2. fix: 버그 수정
버그를 수정할 때 사용하는 커밋 유형입니다. 버그 수정 사항을 명확히 하기 위해 사용하는 것이 좋습니다.
예시:
fix: 사용자 프로필 업데이트 시 발생하는 오류 수정
3. docs: 문서 변경
문서(예: README, API 문서 등)에 변경 사항이 있을 때 사용하는 커밋 유형입니다. 코드 변경 없이 문서만 수정된 경우에 사용합니다.
예시:
docs: API 사용법 문서 추가
4. style: 코드 스타일 변경
코드의 동작에는 영향을 주지 않는 코드 포맷팅, 세미콜론 추가/삭제, 공백 수정 등을 할 때 사용하는 커밋 유형입니다.
예시:
style: 코드 포맷팅 수정
5. refactor: 코드 리팩토링
기능 변경 없이 코드 구조를 개선할 때 사용하는 커밋 유형입니다. 주로 코드의 가독성을 높이거나 유지보수를 쉽게 하기 위해 사용합니다.
예시:
refactor: 사용자 서비스 로직 리팩토링
6. perf: 성능 개선
성능을 향상시키기 위한 코드 변경 시 사용하는 커밋 유형입니다. 주로 속도 향상, 메모리 최적화 등의 작업을 포함합니다.
예시:
perf: 데이터베이스 쿼리 성능 개선
7. test: 테스트 추가 및 수정
테스트 코드를 추가하거나 기존 테스트 코드를 수정할 때 사용하는 커밋 유형입니다. 테스트 커버리지를 높이기 위해 사용됩니다.
예시:
test: 사용자 서비스 단위 테스트 추가
8. build: 빌드 관련 작업
빌드 시스템이나 외부 종속성에 영향을 미치는 변경 사항이 있을 때 사용하는 커밋 유형입니다. 예를 들어, Gradle, Maven, npm 등의 설정을 변경할 때 사용합니다.
예시:
build: Gradle 버전 업데이트
9. ci: 지속적 통합 설정
CI (Continuous Integration) 설정 파일 및 스크립트 변경 시 사용하는 커밋 유형입니다. Jenkins, GitHub Actions, Travis CI 등의 설정 변경을 포함합니다.
예시:
ci: GitHub Actions 워크플로우 추가
10. chore: 기타 작업
그 외 자잘한 변경사항이나 패키지 매니저 설정 등 기타 작업을 커밋할 때 사용하는 유형입니다. 코드 수정 없이 설정 변경이나 빌드 작업 등이 해당됩니다.
예시:
chore: npm 패키지 업데이트
11. revert: 이전 커밋 되돌리기
이전 커밋을 되돌릴 때 사용하는 커밋 유형입니다. revert 커밋은 되돌리는 커밋 메시지를 그대로 포함합니다.
예시:
revert: "feat: 사용자 로그인 기능 추가"
'Spring > Spring' 카테고리의 다른 글
Spring Data JPA: 메서드 이름 기반 쿼리와 @Query 애노테이션 기반 쿼리 비교 (0) | 2024.06.06 |
---|---|
[GitHub] 빈 패키지 commit 하기(.gitkeep) (0) | 2024.06.02 |
[Spring] 도메인형 패키지 구조로의 전환 (0) | 2024.06.01 |
[Spring] IntelliJ에서 구글 자바 스타일 가이드 적용하기 (0) | 2024.05.27 |
[Spring] Bean이란? (0) | 2024.03.05 |