본 문서는 본 프로젝트의 협업 방식과 코드 작업 흐름을 정의한다.
- 모든 작업은 이슈 기반으로 진행한다.
- 이슈 1개 = 브랜치 1개 = PR 1개를 기본 단위로 한다.
main브랜치는 항상 배포 가능한 상태를 유지한다.- 머지는 Merge pull request를 기본으로 한다.
- 기능 추가, 버그 수정, 설정 변경은 이슈로 먼저 정의한다.
- 이슈 템플릿에 있는 형식에 맞춰 작성한다.
- 이슈마다 개별 브랜치를 생성한다.
- 브랜치는
main에서 분기한다.
- 브랜치 내에서는 커밋을 여러 번 해도 무방하다.
- 포맷, 린트는 pre-commit 기준을 따른다.
- 테스트가 필요한 변경은 최소한의 검증 방법을 준비한다.
- 작업 완료 후 PR을 생성한다.
- PR 템플릿에 있는 형식에 맞춰 작성한다.
PR 설명에 아래 문구를 포함한다.
Closes #이슈번호
→ PR 머지 시 이슈는 자동 종료된다.
- 리뷰어 1명 승인 필수
- 리뷰 시 다음을 중점적으로 확인한다:
- 요구사항 충족 여부
- 코드 가독성 및 구조
- 에러 / 엣지 케이스 처리
- CI와 코드 리뷰가 모두 통과하면 머지 가능하다.
- 머지 방식은 Merge pull request이다.
아래의 경우에 한해 이슈 및 브랜치 생성을 생략할 수 있다.
- 단순 오타 수정
- 철자 수정
- 없는 로그 제거
※ 단, 팀원 간 사전 합의를 전제로 한다.