chore: .gitattributes, .gitmessage 프로젝트 표준 설정 추가

- 줄바꿈 자동 관리 (.gitattributes)
- 커밋 메시지 규칙 템플릿 (.gitmessage)

파일: .gitattributes
- LF 강제: .py, .sh, .yml, Dockerfile
- CRLF 강제: .bat, .ps1

파일: .gitmessage
- feat/fix/docs/refactor/chore/perf/test 타입 규칙
- 70자 제목, 파일별 상세 섹션 필수

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
insulee
2026-02-10 12:20:45 +09:00
parent 3831caa470
commit c4a71ea5fe
2 changed files with 66 additions and 0 deletions

14
.gitattributes vendored Normal file
View File

@@ -0,0 +1,14 @@
# Auto-detect text files and normalize line endings
* text=auto
# Force LF for scripts and source files (Linux에서 실행되는 파일)
*.sh text eol=lf
*.py text eol=lf
*.yml text eol=lf
*.yaml text eol=lf
*.env* text eol=lf
Dockerfile text eol=lf
# Force CRLF for Windows-only files
*.bat text eol=crlf
*.ps1 text eol=crlf

52
.gitmessage Normal file
View File

@@ -0,0 +1,52 @@
# <type>: <파일/컴포넌트> <제목> (70자 이내)
#
# <본문 - 변경 사항>
# - 항목1
# - 항목2
# - 항목3
#
# <파일별 상세 (필수)>
# 파일: <경로>
# - 변경 내용 1
# - 변경 내용 2
#
# <추가 컨텍스트/이유 (선택)>
#
# --- 커밋 규칙 ---
# Type:
# feat: 새 기능
# fix: 버그 수정
# docs: 문서 변경
# refactor: 리팩토링
# chore: 빌드/설정
# perf: 성능 개선
# test: 테스트
#
# 제목:
# - 70자 이내
# - 파일/컴포넌트 명시 (예: "admin.html", "logging_service.py", "관리자 페이지")
# - 명령형 ("추가", "수정")
# - 마침표 없음
# - 구체적으로
#
# 본문:
# - 불릿 포인트 사용
# - 무엇을, 왜 변경했는지
# - 파일별 상세 섹션 필수 (어떤 함수/클래스를 추가/수정했는지)
#
# 좋은 예시:
# feat: admin.html 세션 목록에 읽음 상태 뱃지 추가
#
# - localStorage 기반 세션 읽음 상태 관리
# - 읽지 않음 뱃지(빨강): 한 번도 클릭하지 않은 세션
# - 신규 메시지 뱃지(주황): 마지막 확인 이후 추가된 메시지 수
#
# 파일: apps/user_chatbot/static/admin.html
# - getSessionReadStatus() 함수 추가
# - markSessionAsRead() 함수 추가
# - getSessionBadges() 함수 추가
# - CSS: .badge-unread, .badge-new 스타일 추가
#
# 나쁜 예시:
# feat: 세션 목록에 뱃지 추가 (어느 파일인지 불명확)
# fix: 버그 수정 (무엇을 고쳤는지 불명확)