프로젝트 환경을 구축하려면 터미널에서 다음 명령어를 실행하세요:
npm install -g @cyclonedx/cdxgen
pip install -r requirements.txt
mkdir sbom프로젝트를 실행하려면 터미널에서 다음 명령어를 입력하세요:
python project_installer.py -l <Language>기본적인 커밋 메시지 구조는 제목, 본문, 꼬리말 세 가지 파트로 나누며, 각 파트는 빈 줄을 두어 구분합니다.
type: subject
body
footer
타입은 태그와 제목으로 구성되며, 태그는 영어로 쓰되 첫 문자는 대문자로 합니다. : 뒤에만 space가 있음에 유의합니다.
| Commit Type | Description |
|---|---|
| feat | 새로운 기능 추가 |
| fix | 버그 수정 |
| docs | 문서 수정 |
| style | 코드 포맷팅, 세미콜론 누락, 코드 변경이 없는 경우 |
| refactor | 코드 리펙토링 |
| test | 테스트 코드, 리펙토링 테스트 코드 추가 |
| chore | 빌드 업무 수정, 패키지 매니저 수정 |
제목은 최대 50글자가 넘지 않도록 하고 마침표 및 특수기호는 사용하지 않습니다. 영문으로 표기하는 경우 동사(원형)를 가장 앞에 두고 첫 글자는 대문자로 표기합니다 (과거 시제를 사용하지 않습니다). 제목은 개조식 구문으로 작성합니다.
Fixed → Fix
Added → Add
Modified → Modify
본문은 다음의 규칙을 지킵니다.
- 본문은 한 줄 당 72자 내로 작성합니다.
- 본문 내용은 양에 구애받지 않고 최대한 상세히 작성합니다.
- 본문 내용은 어떻게 변경했는지보다 무엇을 변경했는지 또는 왜 변경했는지를 설명합니다.
꼬릿말은 다음의 규칙을 지킵니다.
-
꼬리말은 선택 사항이며 이슈 트래커 ID를 작성합니다.
-
꼬리말은 "유형: #이슈 번호" 형식으로 사용합니다.
-
여러 개의 이슈 번호를 적을 때는 쉼표(,)로 구분합니다.
-
이슈 트래커 유형은 다음 중 하나를 사용합니다:
- Fixes: 이슈 수정 중 (아직 해결되지 않은 경우)
- Resolves: 이슈를 해결했을 때 사용
- Ref: 참고할 이슈가 있을 때 사용
- Related to: 해당 커밋에 관련된 이슈번호 (아직 해결되지 않은 경우)
예시:
Feat: "회원 가입 기능 구현"
SMS, 이메일 중복확인 API 개발
Resolves: #123
Ref: #456
Related to: #48, #45
브랜치 전략은 GitHub Flow를 따릅니다. GitHub Flow는 다음과 같은 단계를 따릅니다:

- 메인 브랜치에서 작업을 시작합니다.
- 기능 브랜치를 생성합니다 (예: feature/your-feature-name).
- 기능 브랜치에서 작업을 수행하고 커밋합니다.
- Pull Request를 생성하여 변경 사항을 검토합니다.
- Pull Request가 승인되면 메인 브랜치에 병합합니다.
- 메인 브랜치에서 배포합니다.
이를 통해 효율적인 협업과 지속적인 통합을 실현할 수 있습니다.