Git Commit Helper
davila7/claude-code-templates
git diff를 분석하여 설명이 포함된 커밋 메시지를 생성합니다. 사용자가 커밋 메시지 작성이나 스테이징된 변경 사항 검토에 대한 도움을 요청할 때 사용하세요.
...모든 것을 확장하십시오소개 Git Commit Helper
Git Commit Helper 스킬은 git diff를 분석하여 개발자가 명확하고 설명적인 커밋 메시지를 작성할 수 있도록 돕기 위해 설계되었습니다. 이 스킬은 모호하거나 구조가 부실한 커밋 메시지로 인해 발생하는 혼란을 해소하고, 소프트웨어 개발 프로젝트에서의 협업을 저해하는 일반적인 문제를 해결합니다. 커밋을 위해 스테이징된 변경 사항을 기반으로 제안을 제공함으로써, 메시지가 유익하고 커밋 메시지 서식 작성의 모범 사례를 따르도록 보장합니다.
이 스킬은 표준 커밋 형식을 따르는 체계적인 접근 방식을 통해 커밋 메시지를 생성합니다. 변경 사항을 기능, 수정, 문서 업데이트와 같은 구체적인 유형으로 분류하고, 효과적인 커밋 메시지 작성 지침을 제공합니다. 사용자는 다양한 git 명령어를 사용하여 스테이징된 변경 사항을 분석하고 맞춤형 커밋 메시지 제안을 받아, 궁극적으로 버전 관리 관행의 명확성과 품질을 향상시킬 수 있습니다.
대상 사용자로는 소프트웨어 개발자, 협업 프로젝트를 진행하는 팀, 그리고 코드베이스 유지 관리에 참여하는 모든 사람이 포함됩니다. ‘ Git Commit Helper ’는 커밋 메시지의 품질을 향상시키고, 워크플로를 간소화하며, 현재 및 향후 협업자들이 버전 관리 이력을 의미 있게 이해하고 쉽게 파악할 수 있도록 보장하고자 하는 분들에게 특히 유용합니다.
자주 묻는 질문
Git Commit Helper 는 어떻게 사용하나요?
'git diff --staged'를 사용하여 스테이징된 변경 사항을 분석한 다음, 해당 변경 사항을 기반으로 커밋 메시지를 생성할 수 있습니다.
이 스킬은 모든 git 환경에서 호환되나요?
네, ' Git Commit Helper '는 git 명령어를 지원하는 모든 환경에서 사용할 수 있습니다.
이 스킬 사용에 제한 사항이 있나요?
이 스킬은 최적의 결과를 얻기 위해 Git 명령어의 올바른 사용과 표준 커밋 형식을 전제로 합니다.
커밋 메시지 형식을 사용자 지정할 수 있나요?
이 스킬은 표준 형식을 따르지만, 필요에 따라 생성된 메시지를 수정할 수 있습니다.
커밋할 변경 사항이 여러 개인 경우에는 어떻게 하나요?
다중 파일 커밋 지침을 활용하여 메시지를 효과적으로 구성할 수 있습니다.
Git Commit Helper
Quick start
Analyze staged changes and generate commit message:
# View staged changesgit diff --staged# Generate commit message based on changes# (Claude will analyze the diff and suggest a message)
Commit message format
Follow conventional commits format:
<type>(<scope>): <description>[optional body][optional footer]Types
- feat: New feature
- fix: Bug fix
- docs: Documentation changes
- style: Code style changes (formatting, missing semicolons)
- refactor: Code refactoring
- test: Adding or updating tests
- chore: Maintenance tasks
Examples
Feature commit:
feat(auth): add JWT authenticationImplement JWT-based authentication system with:- Login endpoint with token generation- Token validation middleware- Refresh token supportBug fix:
fix(api): handle null values in user profilePrevent crashes when user profile fields are null.Add null checks before accessing nested properties.Refactor:
refactor(database): simplify query builderExtract common query patterns into reusable functions.Reduce code duplication in database layer.Analyzing changes
Review what's being committed:
# Show files changedgit status# Show detailed changesgit diff --staged# Show statisticsgit diff --staged --stat# Show changes for specific filegit diff --staged path/to/file
Commit message guidelines
DO:
- Use imperative mood ("add feature" not "added feature")
- Keep first line under 50 characters
- Capitalize first letter
- No period at end of summary
- Explain WHY not just WHAT in body
DON'T:
- Use vague messages like "update" or "fix stuff"
- Include technical implementation details in summary
- Write paragraphs in summary line
- Use past tense
Multi-file commits
When committing multiple related changes:
refactor(core): restructure authentication module- Move auth logic from controllers to service layer- Extract validation into separate validators- Update tests to use new structure- Add integration tests for auth flowBreaking change: Auth service now requires config objectScope examples
Frontend:
feat(ui): add loading spinner to dashboardfix(form): validate email format
Backend:
feat(api): add user profile endpointfix(db): resolve connection pool leak
Infrastructure:
chore(ci): update Node version to 20feat(docker): add multi-stage build
Breaking changes
Indicate breaking changes clearly:
feat(api)!: restructure API response formatBREAKING CHANGE: All API responses now follow JSON:API specPrevious format:{ "data": {...}, "status": "ok" }New format:{ "data": {...}, "meta": {...} }Migration guide: Update client code to handle new response structureTemplate workflow
- Review changes:
git diff --staged - Identify type: Is it feat, fix, refactor, etc.?
- Determine scope: What part of the codebase?
- Write summary: Brief, imperative description
- Add body: Explain why and what impact
- Note breaking changes: If applicable
Interactive commit helper
Use git add -p for selective staging:
# Stage changes interactivelygit add -p# Review what's stagedgit diff --staged# Commit with messagegit commit -m "type(scope): description"
Amending commits
Fix the last commit message:
# Amend commit message onlygit commit --amend# Amend and add more changesgit add forgotten-file.jsgit commit --amend --no-edit
Best practices
- Atomic commits - One logical change per commit
- Test before commit - Ensure code works
- Reference issues - Include issue numbers if applicable
- Keep it focused - Don't mix unrelated changes
- Write for humans - Future you will read this
Commit message checklist
- Type is appropriate (feat/fix/docs/etc.)
- Scope is specific and clear
- Summary is under 50 characters
- Summary uses imperative mood
- Body explains WHY not just WHAT
- Breaking changes are clearly marked
- Related issue numbers are included
Git Commit Helper 설치
스킬 파일을 다운로드하여 .claude/skills/ 디렉터리에 압축을 풀어주세요.
ZIP 다운로드저장소를 클론하고 스킬 파일을 프로젝트에 복사하세요.
git clone https://github.com/davila7/claude-code-templates/blob/main/cli-tool/components/skills/development/git-commit-helper/SKILL.md # Copy SKILL.md to your .claude/skills/ directory
복사





집
