git diff를 분석하여 설명적인 커밋 메시지를 생성합니다. 사용자가 커밋 메시지 작성이나 스테이징된 변경사항 검토를 요청할 때 사용합니다.
스테이징된 변경사항을 분석하고 커밋 메시지를 생성합니다:
# 스테이징된 변경사항 보기
git diff --staged
# 변경사항을 기반으로 커밋 메시지 생성
# (Claude가 diff를 분석하고 메시지를 제안합니다)
Conventional Commits 형식을 따릅니다:
<type>: <description>
[선택적 본문]
[선택적 footer]
기능 커밋:
feat: JWT 인증 추가
다음을 포함한 JWT 기반 인증 시스템 구현:
- 토큰 생성을 포함한 로그인 엔드포인트
- 토큰 검증 미들웨어
- 리프레시 토큰 지원
버그 수정:
fix: 사용자 프로필의 null 값 처리
사용자 프로필 필드가 null일 때 크래시 방지.
중첩된 속성에 접근하기 전에 null 체크 추가.
리팩토링:
refactor: 쿼리 빌더 간소화
공통 쿼리 패턴을 재사용 가능한 함수로 추출.
데이터베이스 레이어의 코드 중복 제거.
커밋되는 내용을 검토합니다:
# 변경된 파일 표시
git status
# 상세 변경사항 표시
git diff --staged
# 통계 표시
git diff --staged --stat
# 특정 파일의 변경사항 표시
git diff --staged path/to/file
해야 할 것:
하지 말아야 할 것:
여러 관련 변경사항을 커밋할 때:
refactor: 인증 모듈 재구성
- 컨트롤러에서 서비스 레이어로 인증 로직 이동
- 검증을 별도의 유효성 검사자로 추출
- 새로운 구조를 사용하도록 테스트 업데이트
- 인증 흐름을 위한 통합 테스트 추가
Breaking change: 인증 서비스는 이제 설정 객체가 필요함
Breaking Changes를 명확하게 표시합니다:
feat!: API 응답 형식 재구성
BREAKING CHANGE: 모든 API 응답이 이제 JSON:API 사양을 따릅니다
이전 형식:
{ "data": {...}, "status": "ok" }
새 형식:
{ "data": {...}, "meta": {...} }
마이그레이션 가이드: 새로운 응답 구조를 처리하도록 클라이언트 코드 업데이트
git diff --staged선택적 스테이징을 위해 git add -p 사용:
# 인터랙티브하게 변경사항 스테이징
git add -p
# 스테이징된 것 검토
git diff --staged
# 메시지와 함께 커밋
git commit -m "type: description"
마지막 커밋 메시지 수정:
# 커밋 메시지만 수정
git commit --amend
# 수정하고 더 많은 변경사항 추가
git add forgotten-file.js
git commit --amend --no-edit