Skip to content

Latest commit

Β 

History

History
87 lines (63 loc) Β· 5.31 KB

File metadata and controls

87 lines (63 loc) Β· 5.31 KB

πŸš€ Conventions

이 λ¬Έμ„œλŠ” 채널링 FE ν”„λ‘œμ νŠΈμ˜ μ›ν™œν•œ ν˜‘μ—…κ³Ό 일관성 μžˆλŠ” μ½”λ“œλ² μ΄μŠ€ μœ μ§€λ₯Ό μœ„ν•œ κ·œμΉ™μ„ λ‹΄κ³  μžˆμŠ΅λ‹ˆλ‹€. ν”„λ‘œμ νŠΈμ— μ°Έμ—¬ν•˜λŠ” λͺ¨λ“  뢄은 이 κ°€μ΄λ“œλ₯Ό μˆ™μ§€ν•˜κ³  λ”°λΌμ£Όμ‹œκΈΈ λ°”λžλ‹ˆλ‹€.

🌳 브랜치 μ „λž΅ (Branching Strategy)

우리 ν”„λ‘œμ νŠΈλŠ” Git-flow에 κΈ°λ°˜ν•œ κ°„λ‹¨ν•œ 브랜치 μ „λž΅μ„ μ‚¬μš©ν•©λ‹ˆλ‹€.

  • main: 배포 κ°€λŠ₯ν•œ ν”„λ‘œλ•μ…˜ μ½”λ“œλ₯Ό λ‹΄κ³  μžˆλŠ” λΈŒλžœμΉ˜μž…λ‹ˆλ‹€. 였직 develop λΈŒλžœμΉ˜λ‘œλΆ€ν„°μ˜ 병합(Merge)만 ν—ˆμš©λ©λ‹ˆλ‹€.
  • develop: λ‹€μŒ 버전 배포λ₯Ό μœ„ν•΄ 개발 쀑인 μ½”λ“œλ₯Ό λ‹΄κ³  μžˆλŠ” λΈŒλžœμΉ˜μž…λ‹ˆλ‹€. λͺ¨λ“  κΈ°λŠ₯ κ°œλ°œμ€ 이 브랜치λ₯Ό κΈ°μ€€μœΌλ‘œ ν•©λ‹ˆλ‹€.
  • [dev/fix/docs]/{κΈ°λŠ₯-이름}: μƒˆλ‘œμš΄ κΈ°λŠ₯을 κ°œλ°œν•˜λŠ” λΈŒλžœμΉ˜μž…λ‹ˆλ‹€.
    • 생성 μœ„μΉ˜: develop λΈŒλžœμΉ˜μ—μ„œ μƒμ„±ν•©λ‹ˆλ‹€.
    • 병합 μœ„μΉ˜: κΈ°λŠ₯ 개발이 μ™„λ£Œλ˜λ©΄ develop 브랜치둜 Pull Request(PR)λ₯Ό λ³΄λƒ…λ‹ˆλ‹€.
    • 브랜치 이름 κ·œμΉ™: μ˜μ–΄ μ†Œλ¬Έμž, 숫자, ν•˜μ΄ν”ˆ(-)을 μ‚¬μš©ν•˜μ—¬ κ°„κ²°ν•˜κ²Œ μž‘μ„±ν•©λ‹ˆλ‹€.
      • μ˜ˆμ‹œ: dev/login-page, fix/login-not-working, docs/update-readme
  • hotfix/{이슈-이름}: main λΈŒλžœμΉ˜μ— λ°œμƒν•œ κΈ΄κΈ‰ν•œ 버그λ₯Ό μˆ˜μ •ν•˜λŠ” λΈŒλžœμΉ˜μž…λ‹ˆλ‹€.
    • 생성 μœ„μΉ˜: main λΈŒλžœμΉ˜μ—μ„œ μƒμ„±ν•©λ‹ˆλ‹€.
    • 병합 μœ„μΉ˜: μˆ˜μ • μ™„λ£Œ ν›„ mainκ³Ό develop 브랜치 λͺ¨λ‘μ— λ³‘ν•©ν•©λ‹ˆλ‹€.

πŸ’¬ 컀밋 λ©”μ‹œμ§€ μ»¨λ²€μ…˜ (Commit Message Convention)

μš°λ¦¬λŠ” Conventional Commits 양식을 λ”°λ¦…λ‹ˆλ‹€. μ΄λŠ” 컀밋 νžˆμŠ€ν† λ¦¬λ₯Ό λͺ…ν™•ν•˜κ²Œ ν•˜κ³ , 버전 관리λ₯Ό μžλ™ν™”ν•˜λŠ” 데 도움이 λ©λ‹ˆλ‹€.

컀밋 λ©”μ‹œμ§€ ꡬ쑰

<type>: <subject>
  • **<type>**κ³Ό :(콜둠), 그리고 <subject> μ‚¬μ΄μ—λŠ” 곡백이 ν•˜λ‚˜ μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€.

1. Type (νƒ€μž…)

μ»€λ°‹μ˜ 성격을 λ‚˜νƒ€λ‚΄λŠ” νƒ€μž…μž…λ‹ˆλ‹€. 첫 κΈ€μžλŠ” μ†Œλ¬Έμžλ‘œ μž‘μ„±ν•΄μ•Ό ν•©λ‹ˆλ‹€.

νƒ€μž… μ„€λͺ…
feat μƒˆλ‘œμš΄ κΈ°λŠ₯ μΆ”κ°€
fix 버그 μˆ˜μ •
docs λ¬Έμ„œ μˆ˜μ • (README, Rules λ“±)
style μ½”λ“œ ν¬λ§·νŒ…, μ„Έλ―Έμ½œλ‘  μΆ”κ°€ λ“± κΈ°λŠ₯ λ³€κ²½ μ—†λŠ” μŠ€νƒ€μΌ μˆ˜μ •
refactor μ½”λ“œ λ¦¬νŒ©ν† λ§ (κΈ°λŠ₯ λ³€ν™” 없이 ꡬ쑰 κ°œμ„ )
test ν…ŒμŠ€νŠΈ μ½”λ“œ μΆ”κ°€ 및 μˆ˜μ •
chore λΉŒλ“œ, νŒ¨ν‚€μ§€ λ§€λ‹ˆμ € μ„€μ • λ“± 기타 작일
ci CI/CD ꡬ성 파일 및 슀크립트 λ³€κ²½
design CSS λ“± μ‚¬μš©μž UI λ””μžμΈ λ³€κ²½
rename 파일 ν˜Ήμ€ 폴더λͺ…을 μˆ˜μ •ν•˜λŠ” 경우
remove νŒŒμΌμ„ μ‚­μ œν•˜λŠ” μž‘μ—…λ§Œ μˆ˜ν–‰ν•œ 경우
!BREAKING API λ³€κ²½ β†’ 이전 버전 λ™μž‘ X
!HOTFIX 치λͺ…적 버그

2. Subject (제λͺ©)

  • 50자λ₯Ό λ„˜μ§€ μ•Šλ„λ‘ κ°„κ²°ν•˜κ²Œ, 핡심 λ‚΄μš©μ„ λ‹΄μ•„ μž‘μ„±ν•©λ‹ˆλ‹€.
  • λ¬Έμž₯의 끝에 λ§ˆμΉ¨ν‘œ(.)λ₯Ό 찍지 μ•ŠμŠ΅λ‹ˆλ‹€.

컀밋 λ©”μ‹œμ§€ μ˜ˆμ‹œ

  • feat: μ†Œμ…œ 둜그인 κΈ°λŠ₯ μΆ”κ°€
  • fix: λͺ¨λ°”일 ν™˜κ²½μ—μ„œ 헀더 λ ˆμ΄μ•„μ›ƒ 깨짐 μˆ˜μ •
  • docs: README νŒŒμΌμ— μ„€μΉ˜ 방법 μ—…λ°μ΄νŠΈ
  • style: 전체 νŒŒμΌμ— Prettier 적용
  • refactor: useUser ν›… 둜직 κ°œμ„ 

🎫 이슈 μ»¨λ²€μ…˜ (Issue Convention)

μ΄μŠˆλŠ” GitHub Projects λ³΄λ“œμ—μ„œ μƒμ„±ν•˜κ³  μƒνƒœ κ΄€λ¦¬ν•˜λŠ” 것을 ꢌμž₯ν•©λ‹ˆλ‹€.

  • 제λͺ©: [라벨] 이슈 λ‚΄μš© μš”μ•½ ν˜•μ‹μœΌλ‘œ μž‘μ„±ν•©λ‹ˆλ‹€. (예: [FIX] 메인 νŽ˜μ΄μ§€μ—μ„œ 이미지 λ‘œλ”© μ•ˆ 됨)
  • λ‚΄μš©: μž¬ν˜„ 방법, κΈ°λŒ€ κ²°κ³Ό, μ‹€μ œ κ²°κ³Ό, μŠ€ν¬λ¦°μƒ· 등을 ν¬ν•¨ν•˜μ—¬ λ‹€λ₯Έ μ‚¬λžŒμ΄ 문제λ₯Ό λͺ…ν™•νžˆ 이해할 수 μžˆλ„λ‘ μƒμ„Ένžˆ μž‘μ„±ν•©λ‹ˆλ‹€.
  • 라벨 (Labels): 이슈의 성격에 λ§žλŠ” 라벨(bug, feature, docs λ“±)을 λ°˜λ“œμ‹œ μΆ”κ°€ν•©λ‹ˆλ‹€.

πŸ“¬ PR(Pull Request) μ»¨λ²€μ…˜

  • 제λͺ©: [라벨] μž‘μ—… λ‚΄μš© μš”μ•½ ν˜•μ‹μœΌλ‘œ μž‘μ„±ν•©λ‹ˆλ‹€. (예: [DEV] 둜그인 νŽ˜μ΄μ§€ UI κ΅¬ν˜„)
  • λ‚΄μš©:
    • κ΄€λ ¨ 이슈: Closed #이슈번호 λ˜λŠ” Fixes #이슈번호λ₯Ό ν¬ν•¨ν•˜μ—¬ κ΄€λ ¨ μ΄μŠˆκ°€ μžλ™μœΌλ‘œ λ‹«νžˆλ„λ‘ ν•©λ‹ˆλ‹€.
    • μž‘μ—… λ‚΄μš©: 이 PRμ—μ„œ μ–΄λ–€ μž‘μ—…μ„ ν–ˆλŠ”μ§€ λͺ©λ‘ ν˜•μ‹μœΌλ‘œ μš”μ•½ν•©λ‹ˆλ‹€.
    • μŠ€ν¬λ¦°μƒ·: UI λ³€κ²½ 사항이 μžˆλŠ” 경우, λ³€κ²½ μ „ν›„ μŠ€ν¬λ¦°μƒ·μ„ λ°˜λ“œμ‹œ μ²¨λΆ€ν•˜μ—¬ 리뷰어가 μ‰½κ²Œ 이해할 수 μžˆλ„λ‘ ν•©λ‹ˆλ‹€.
  • 리뷰 μš”μ²­: μ΅œμ†Œ 1λͺ… μ΄μƒμ˜ 리뷰어λ₯Ό μ§€μ •ν•©λ‹ˆλ‹€.

✨ μ½”λ”© μŠ€νƒ€μΌ (Coding Style)

μ½”λ“œ μŠ€νƒ€μΌμ˜ 일관성을 μœ μ§€ν•˜κΈ° μœ„ν•΄ Prettier와 ESLintλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

  • μ½”λ“œλ₯Ό μ»€λ°‹ν•˜κΈ° 전에 λ°˜λ“œμ‹œ ν¬λ§·νŒ…μ„ μ‹€ν–‰ν•˜μ—¬ μŠ€νƒ€μΌμ„ ν†΅μΌν•΄μ£Όμ„Έμš”.
  • λ˜λ„λ‘ VSCode ν™•μž₯ ν”„λ‘œκ·Έλž¨μ„ μ„€μΉ˜ν•˜μ—¬ 파일 μ €μž₯ μ‹œ μžλ™μœΌλ‘œ μŠ€νƒ€μΌμ΄ μ μš©λ˜λ„λ‘ μ„€μ •ν•˜λŠ” 것을 ꢌμž₯ν•©λ‹ˆλ‹€.