This repository has been archived by the owner on Jun 19, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit Convention
JinMu Go edited this page Oct 10, 2023
·
4 revisions
WebWaveMaker(이하 WWM) Webserv의 Commit Convention은 Conventional Commit 스펙을 따릅니다. Conventional Commits 스펙은 명확한 커밋 히스토리를 생성하기 위한 간단한 규칙을 제공합니다. 이 컨벤션은 커밋 메시지에 신규 기능 추가, 문제 수정, 커다란 변화가 있음을 기술함으로써 유의적 버전(Semantic Versioning)과 연계됩니다.
커밋 메시지는 다음과 같은 구조를 따릅니다:
[jira issue-key] <타입>(적용 범위(선택 사항)): <설명>
[본문(선택 사항)]
[꼬리말(선택 사항)]
jira의 issue-key를 대괄호로 묶어서 tag합니다. 이후 type과 공백으로 구분합니다.
[WWM-42] feat: test file add
-
build
: build system 또는 external dependencies에 영향을 미치는 변경사항 -
chore
: 빌드, 설정 변경 등 작은 변경사항 -
ci
: CI configuration 파일 또는 scripts의 변경사항 (예시: CircleCi, SauceLabs) -
docs
: 문서 변경사항 -
feat
: 새로운 기능 추가 -
fix
: 버그 수정 -
perf
: 성능을 향상시키는 변경사항 -
refactor
: 기능 추가나 버그 수정이 아닌 변경 사항 -
revert
: 작업 되돌리기 -
style
: 스타일 작성 또는 수정 -
test
: 누락된 테스트 추가 또는 기존 테스트 수정
- 커밋 타입은 필수 사항이며 소문자로 작성합니다.
- 적용 범위는 선택 사항이며 괄호로 감싸서 작성합니다.
- 설명은 필수 사항이며 변경 사항을 간결하게 요약하며 첫 글자는 소문자, 현재 시제, 명령문으로 작성합니다.
- 본문은 선택 사항이며 변경 사항의 동기와 변경 효과를 설명합니다. 최소 20자 이상이어야 합니다.
- 꼬리말은 선택 사항이며 Breaking Changes, deprecations 또는 연관된 이슈, 풀 리퀘스트를 포함합니다.
커밋 메시지 본문은 변경 사항에 대한 상세한 내용을 설명하는 곳입니다.
- 현재 시제와 명령문을 사용하여 작성합니다. (예: "이 기능을 추가합니다" 대신 "이 기능을 추가했습니다.")
- 변경 사항의 동기를 설명합니다. 왜 이 변경이 필요한지, 어떤 문제를 해결하려는지 등을 기술합니다.
- 변경 효과를 설명합니다. 이전 동작과 현재 동작의 비교를 통해 변경 사항을 이해할 수 있도록 합니다.
커밋 메시지 꼬리말은 선택 사항이지만 유용한 정보를 포함할 수 있는 곳입니다. Breaking Changes 또는 Deprecations를 설명하거나, 해당 커밋과 연관된 이슈나 풀 리퀘스트 번호를 포함할 수 있습니다.
revert
커밋은 이전 커밋을 되돌리기 위해 사용됩니다 revert
커밋은 이전 커밋의 영향을 취소하고 이전 상태로 되돌릴 때 사용되며, 이를 통해 코드의 안정성과 일관성을 유지할 수 있습니다.
revert
커밋의 헤더는 다음과 같습니다:
revert: <revert 대상 커밋의 헤더>
revert
커밋 본문에는 다음과 같이 작성합니다:
This reverts commit <revert 대상 커밋의 SHA>
기본 커밋 메시지
feat: 새로운 사용자 등록 기능 추가
새로운 사용자 등록 기능을 추가하였습니다. 사용자는 이제 이메일과 비밀번호로 등록할 수 있습니다.
커밋 메시지 본문 포함
fix: 버그 수정 - 로그인 시간 초과 문제
로그인 시간 초과 문제를 해결했습니다. 이제 세션이 올바르게 유지됩니다.
이 문제는 사용자가 로그인 후 일정 시간 동안 활동하지 않으면 로그아웃되는 버그로, 세션 관리 코드를 수정하여 해결했습니다.
커밋 메시지 꼬리말 포함
feat: 로그인 기능 추가
사용자 로그인 기능을 추가했습니다.
BREAKING CHANGE: 로그인 API 엔드포인트 변경
feat: 로그인 기능 업데이트
로그인 기능을 업데이트했습니다.
BREAKING CHANGE: 로그인 API 엔드포인트 변경
이전에는 /api/login을 사용했지만 이제는 /api/auth/login을 사용해야 합니다.
Closes #123
revert 커밋
revert: feat: 로그인 기능 추가
This reverts commit <이전 커밋의 SHA>
로그인 기능 추가 커밋을 되돌립니다.