이 문서는 프로젝트 협업 규칙을 정리한 문서입니다. 이슈, 브랜치, 커밋, PR 작성 시 아래 규칙을 따릅니다.
- 작업 시작 전 GitHub Issue를 생성합니다.
- 이슈는 저장소의 템플릿을 사용합니다.
- 기능 추가는
Feature, 버그 수정은Bug, 구조 개선은Refactor템플릿을 사용합니다. - 하나의 이슈는 하나의 작업 단위를 기준으로 작성합니다.
짧은 예시:
Feature: URL 검사 결과 화면 추가Bug: 정상 URL이 위험으로 표시되는 문제Refactor: 결과 카드 상태 분기 로직 정리
- 브랜치명 형식은
type/{github_issue_number}입니다. - 이슈 번호는 GitHub가 자동으로 부여한 번호를 그대로 사용합니다.
- 브랜치 타입은 아래 값을 사용합니다.
| 타입 | 용도 | 예시 |
|---|---|---|
feat |
기능 개발 | feat/12 |
bug |
버그 수정 | bug/7 |
refactor |
구조 개선 | refactor/15 |
chore |
레포 설정, 템플릿, 워크플로 | chore/1 |
docs |
문서 작업 | docs/9 |
- 커밋 메시지 형식은
type: summary입니다. - 요약은 한 줄로 작성하고, 변경 목적이 드러나게 적습니다.
- 브랜치 타입과 커밋 타입은 다를 수 있습니다.
- 예:
bug/7브랜치에서fix: 검사 결과 문구 수정
- 예:
짧은 예시:
chore: GitHub 이슈 및 PR 템플릿 설정
feat: URL 검사 결과 화면 추가
fix: 정상 URL 오탐 문구 수정
refactor: 결과 카드 상태 분기 정리
docs: 컨벤션 문서 추가
- PR 제목 형식은
[KD-{notion_ticket_number}] 작업 제목입니다. - Notion 티켓 번호는
KD-104처럼 사용합니다. - PR 본문에는 관련 GitHub Issue를 연결합니다.
- 가능하면 하나의 PR은 하나의 이슈만 해결하도록 유지합니다.
짧은 예시:
[KD-104] GitHub 이슈 및 PR 템플릿 설정
PR 본문 예시:
Closes #1
- 관련 이슈가 연결되어 있는지 확인합니다.
- 커밋 메시지와 PR 제목이 규칙에 맞는지 확인합니다.
- 변경 범위와 의도가 PR 본문에 드러나는지 확인합니다.
pnpm install이후lefthook이 설치되어 pre-commit hook이 활성화됩니다.- 커밋 전에는 staged 파일 기준으로
eslint --fix와prettier --write가 자동 실행됩니다. - 전체 검사는 필요할 때 직접 아래 명령으로 실행합니다.
pnpm run lint
pnpm run format
pnpm run test
pnpm run security:check