Merge remote-tracking branch 'origin/master'

This commit is contained in:
김판돌 2025-05-15 20:50:06 +09:00
commit f3506c37b5
1 changed files with 106 additions and 1 deletions

105
README.md
View File

@ -1,3 +1,108 @@
# Wizard_Of_Wak
왁타버스 팬게임 깃 저장소
# Git 브랜치 및 커밋 컨벤션
## 📌 브랜치 네이밍 규칙
| 브랜치명 형식 | 설명 | 예시 |
|----------------------------|--------------------------------------|----------------------------------|
| `master` | 최상위 브랜치 (배포용) | `master` |
| `feat_{기능단위/명칭}` | 새로운 기능 개발 브랜치 | `feat_auth/login`, `feat_shop/gacha` |
| `fix_{issue_num}` | 일반 버그 수정 브랜치 | `fix_102`, `fix_345` |
| `hotfix_{issue_num}` | 긴급 버그 패치 브랜치 | `hotfix_201`, `hotfix_999` |
| `release_{명칭}` | 릴리즈 빌드용 브랜치 | `release_v1.2.0`, `release_beta` |
---
## 📝 커밋 메시지 규칙
커밋 메시지는 다음과 같은 형식으로 작성합니다:
```
[{작업약어}] 한 줄 요약 (줄 바꿈 없이 50자 내외)
(한 줄 공백)
자세한 설명 작성 (필요시)
```
### 작업 약어 목록
| 약어 | 설명 |
|-------------|-----------------------------------------------|
| `[fix]` | 버그 수정 |
| `[add]` | 새로운 파일 또는 기능 추가 |
| `[del]` | 파일 삭제 |
| `[gitfix]` | `.gitignore`, `.gitattributes` 등 Git 설정 수정 |
| `[refactor]`| 코드 리팩토링 (기능 변화 없음) |
| `[test]` | 테스트 코드 작성 또는 테스트 작업 |
| `[chore]` | 빌드 설정, 문서 변경 등 기타 잡일 |
---
### ✅ 커밋 메시지 예시
#### 기능 추가
```
[add] 로그인 API 구현
사용자 로그인 기능을 위한 컨트롤러, 서비스, 라우터를 추가했습니다.
JWT 발급 및 유효성 검증도 포함되어 있습니다.
```
#### 버그 수정
```
[fix] 로그인 실패 시 500 에러 반환 문제 해결
존재하지 않는 사용자일 때도 서버 오류가 발생하던 문제를
적절한 401 응답을 주도록 수정했습니다.
```
#### 리팩토링
```
[refactor] 유저 인증 미들웨어 리팩토링
복잡했던 조건문을 함수 분리하여 가독성을 개선했습니다.
```
#### 테스트 추가
```
[test] 로그인 API 단위 테스트 추가
성공, 실패 케이스에 대한 단위 테스트를 작성했습니다.
```
#### 설정 파일 수정
```
[gitfix] .gitignore에 .env 추가
환경 변수 파일이 Git에 올라가지 않도록 설정을 추가했습니다.
```
---
## 🧾 코드 명명 규칙 (MSDN 기반 - C# 스타일, 일부 수정)
MSDN 권장 명명법을 따르되, **카멜 표기에서 `_` 접두어는 사용하지 않습니다**.
| 항목 | 표기법 | 예시 |
|-------------------|----------------|-----------------------------|
| 클래스 이름 | PascalCase | `UserService`, `LoginManager` |
| 메서드 이름 | PascalCase | `GetUser()`, `Authenticate()` |
| 지역 변수 | camelCase | `userId`, `loginToken` |
| 매개변수 | camelCase | `string userName` |
| 속성 (Property) | PascalCase | `UserId`, `AccessToken` |
| 인터페이스 | PascalCase + I | `IUserRepository`, `ILogger` |
| 열거형 (enum) | PascalCase | `UserType.Admin`, `Status.Active` |
| 상수 (const) | PascalCase | `MaxRetryCount`, `DefaultPort` |
| private 필드 | camelCase | `loginCount`, `retryLimit` |
> ⚠️ `private` 필드에 `_`를 붙이지 않고, 일반 `camelCase`로 작성합니다.