commit
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseClaude Command: Commit
Claude Command: Commit
이 커맨드는 컨벤셔널 커밋 메시지를 사용하여 체계적인 커밋을 생성하도록 도와줍니다. 커밋시 husky 훅이 실행되므로, lint, typecheck 등의 검증을 필요하지 않습니다.
- 로 지정되면 --no-verify로 실행해 훅 실행을 건너 뜁니다.
--no-verify - 로 스테이징된 파일을 확인합니다
git status - 스테이징된 파일이 0개라면, 자동으로 모든 수정/신규 파일을 로 추가합니다
git add - 를 수행하여 커밋될 변경사항을 파악합니다
git diff - diff를 분석하여 여러 개의 논리적으로 구분된 변경사항이 있는지 판단합니다
- 여러 개의 구분된 변경사항이 감지되면, 커밋을 여러 개로 분할할 것을 제안합니다
- 각 커밋(또는 분할하지 않는 경우 단일 커밋)에 대해 컨벤셔널 커밋 형식으로 메시지를 생성합니다
该命令使用规范化提交信息帮助你创建结构化的提交。提交时会执行husky钩子,因此无需进行lint、类型检查等验证。
- 如果指定,则会以--no-verify执行,跳过钩子运行。
--no-verify - 通过查看已暂存的文件
git status - 如果暂存文件数量为0,会自动用添加所有修改/新增的文件
git add - 执行来确定要提交的更改内容
git diff - 分析diff,判断是否存在多个逻辑上独立的更改
- 如果检测到多个独立更改,会建议将提交拆分为多个
- 针对每个提交(或不拆分的单个提交),生成规范化提交格式的信息
커밋 모범 사례
提交最佳实践
- 커밋 전 검증: 코드가 린팅되고, 타입 체크를 통과하는지 확인
- 원자적 커밋: 각 커밋은 단일 목적을 가진 관련된 변경사항만 포함
- 큰 변경사항 분할: 여러 관심사를 다루는 변경사항은 별도 커밋으로 분할
- 컨벤셔널 커밋 형식: 형식 사용, type은 다음 중 하나:
<type>(<scope>): [#이슈번호] <설명>- : 새로운 기능
feat - : 버그 수정
fix - : 문서 변경
docs - : 코드 스타일 변경 (포맷팅 등)
style - : 버그 수정이나 기능 추가가 아닌 코드 변경
refactor - : 성능 개선
perf - : 테스트 추가 또는 수정
test - : 빌드 프로세스, 도구 등의 변경
chore - : CI/CD 관련 변경
ci - : 변경사항 되돌리기
revert
- 커밋 메시지 제목은 한국어로 작성: 설명은 한국어로 명확하게 작성
- 간결한 첫 줄: 첫 줄은 72자 이내로 유지
- 이모지 사용 금지: 커밋 메시지에 이모지를 넣지 않는다. 형식만 사용
type(scope):
- 提交前验证:确认代码通过lint检查和类型校验
- 原子提交:每个提交仅包含单一目的的相关更改
- 拆分大型更改:涉及多个关注点的更改拆分为单独提交
- 规范化提交格式:使用格式,type可选值如下:
<type>(<scope>): [# 问题编号] <描述>- :新增功能
feat - :修复bug
fix - :文档修改
docs - :代码样式修改(如格式化等)
style - :既非bug修复也非功能新增的代码修改
refactor - :性能优化
perf - :新增或修改测试
test - :构建流程、工具等的修改
chore - :CI/CD相关修改
ci - :撤销更改
revert
- 提交信息标题使用韩语:描述部分需用韩语清晰撰写
- 首行简洁:首行控制在72字符以内
- 禁止使用表情符号:提交信息中不得添加表情符号,仅使用格式
type(scope):
커밋 분할 가이드라인
提交拆分指南
diff를 분석할 때, 다음 기준에 따라 커밋 분할을 고려합니다:
- 다른 관심사: 코드베이스의 서로 관련없는 부분의 변경
- 다른 변경 타입: 기능, 수정, 리팩토링 등이 섞인 경우
- 파일 패턴: 다른 유형의 파일 변경 (예: 소스 코드 vs 문서)
- 논리적 그룹화: 별도로 이해하거나 리뷰하기 쉬운 변경사항
- 크기: 분할하면 더 명확해질 수 있는 매우 큰 변경사항
分析diff时,根据以下标准考虑拆分提交:
- 不同关注点:代码库中互不相关部分的修改
- 不同更改类型:混合了功能、修复、重构等类型的情况
- 文件模式:不同类型文件的修改(例如:源代码 vs 文档)
- 逻辑分组:便于单独理解或评审的更改
- 规模:拆分后更清晰的大型更改
예시
示例
좋은 커밋 메시지 (한국어):
feat(react): [#52] 사용자 인증 시스템 추가fix(react): [#63] 렌더링 프로세스의 메모리 누수 해결docs(docs): 새로운 엔드포인트로 API 문서 업데이트refactor(react): [#45] 파서의 에러 처리 로직 단순화test(react): [#52] RowClick Feature 단위 테스트 추가chore(root): 개발자 도구 설정 프로세스 개선perf(react): [#45] 그룹 헤더 연관 기능 성능 개선
커밋 분할 예시:
- 첫 번째 커밋:
feat(react): [#52] 새로운 solc 버전 타입 정의 추가 - 두 번째 커밋:
docs(docs): 새로운 solc 버전에 대한 문서 업데이트 - 세 번째 커밋:
chore(deps): package.json 의존성 업데이트 - 네 번째 커밋:
test(react): [#52] 새로운 기능에 대한 단위 테스트 추가
良好的提交信息(韩语):
feat(react): [#52] 사용자 인증 시스템 추가fix(react): [#63] 렌더링 프로세스의 메모리 누수 해결docs(docs): 새로운 엔드포인트로 API 문서 업데이트refactor(react): [#45] 파서의 에러 처리 로직 단순화test(react): [#52] RowClick Feature 단위 테스트 추가chore(root): 개발자 도구 설정 프로세스 개선perf(react): [#45] 그룹 헤더 연관 기능 성능 개선
提交拆分示例:
- 第一个提交:
feat(react): [#52] 새로운 solc 버전 타입 정의 추가 - 第二个提交:
docs(docs): 새로운 solc 버전에 대한 문서 업데이트 - 第三个提交:
chore(deps): package.json 의존성 업데이트 - 第四个提交:
test(react): [#52] 새로운 기능에 대한 단위 테스트 추가
커맨드 옵션
命令选项
- : 커밋 전 검증 (lint, typecheck) 건너뛰기
--no-verify
- :跳过提交前验证(lint、typecheck)
--no-verify
중요 사항
重要事项
- 기본적으로 코드 품질을 보장하기 위해 커밋 전 검증(,
pnpm lint)이 실행됩니다pnpm typecheck - 이러한 검증이 실패하면, 커밋을 계속 진행할지 아니면 먼저 문제를 수정할지 묻습니다
- 특정 파일이 이미 스테이징되어 있다면, 해당 파일만 커밋됩니다
- 스테이징된 파일이 없다면, 모든 수정 및 신규 파일을 자동으로 스테이징합니다
- 커밋 메시지는 감지된 변경사항을 기반으로 작성됩니다
- 커밋하기 전에 diff를 검토하여 여러 커밋으로 나누는 것이 더 적절한지 식별합니다
- 여러 커밋을 제안하는 경우, 변경사항을 별도로 스테이징하고 커밋하도록 도와줍니다
- 항상 커밋 diff를 검토하여 메시지가 변경사항과 일치하는지 확인합니다
- 커밋 메시지는 반드시 한국어로 작성합니다
- 이모지를 절대 사용하지 않습니다
- body 각 줄은 100자를 넘지 않도록 합니다
- 默认情况下,为保证代码质量,提交前会执行验证(、
pnpm lint)pnpm typecheck - 如果验证失败,会询问你是继续提交还是先修复问题
- 如果已有特定文件被暂存,则仅提交该文件
- 如果没有暂存文件,会自动暂存所有修改和新增文件
- 提交信息基于检测到的更改生成
- 提交前会检查diff,判断是否拆分为多个提交更合适
- 若建议拆分多个提交,会帮助你分别暂存并提交更改
- 请始终检查提交diff,确保提交信息与更改内容一致
- 提交信息必须使用韩语
- 绝对禁止使用表情符号
- body部分每行不得超过100字符