처음 Git을 μ‚¬μš©ν•  λ•ŒλŠ” κ·Έλƒ₯ μ•„λ¬΄λ ‡κ²Œλ‚˜ 컀밋 λ©”μ‹œμ§€λ₯Ό μž‘μ„±ν–ˆμ—ˆλ‹€. β€œupdate”, β€œfix bug”, β€œμž‘μ—… μ™„λ£Œβ€ 같은 λ©”μ‹œμ§€λ“€β€¦ 그런데 λͺ‡ 달 후에 λ‹€μ‹œ ν”„λ‘œμ νŠΈλ₯Ό 봀을 λ•Œ, λ„λŒ€μ²΄ 뭘 μˆ˜μ •ν•œ 건지 ν•œ λˆˆμ— νŒŒμ•…ν•˜κΈ°κ°€ λ„ˆλ¬΄ μ–΄λ €μ› λ‹€.

κ·Έλž˜μ„œ Git 컀밋 μ»¨λ²€μ…˜μ— λŒ€ν•΄ 찾아보기 μ‹œμž‘ν–ˆκ³ , 그러던 쀑 borahmλ‹˜μ˜ λΈ”λ‘œκ·Έ ν¬μŠ€νŠΈμ—μ„œ 정말 잘 μ •λ¦¬λœ 컀밋 λ©”μ‹œμ§€ ν…œν”Œλ¦Ώμ„ λ°œκ²¬ν–ˆλ‹€.

κ·Έ ν…œν”Œλ¦Ώμ„ 기반으둜 λ‚΄ μŠ€νƒ€μΌμ„ 더해봀닀. 특히 previously/now ν˜•μ‹μ„ μΆ”κ°€ν•΄μ„œ λ³€κ²½ μ „ν›„λ₯Ό λͺ…ν™•ν•˜κ²Œ 비ꡐ할 수 있게 ν–ˆκ³ , λ³Έλ¬Έ μœ—λΆ€λΆ„μ€ 전체적인 μš”μ•½μ„, previously/nowλŠ” ꡬ체적인 변경사항을 보여주도둝 역할을 κ΅¬λΆ„ν–ˆλ‹€.

결과적으둜 μ§€κΈˆμ€ 컀밋 νžˆμŠ€ν† λ¦¬λ§Œ 봐도 ν”„λ‘œμ νŠΈμ˜ λ³€ν™” 과정을 ν•œ λˆˆμ— νŒŒμ•…ν•  수 μžˆλŠ”, κ°„κ²°ν•˜λ©΄μ„œλ„ λͺ…ν™•ν•œ ν…œν”Œλ¦Ώμ„ μ™„μ„±ν•  수 μžˆμ—ˆλ‹€. 이 ν…œν”Œλ¦Ώμ΄ λ‹€λ₯Έ μ‚¬λžŒλ“€μ—κ²Œλ„ 도움이 λ˜μ—ˆμœΌλ©΄ μ’‹κ² λ‹€!

컀밋 λ©”μ‹œμ§€ ν…œν”Œλ¦Ώ

###############
# IMPORTANT: All commit messages must be written in English
# <νƒ€μž…> : <제λͺ©> 의 ν˜•μ‹μœΌλ‘œ 제λͺ©μ„ μ•„λž˜ 곡백쀄에 μž‘μ„±
# 제λͺ©μ€ 50자 이내 / 변경사항이 "무엇"인지 λͺ…ν™•νžˆ μž‘μ„± / 끝에 λ§ˆμΉ¨ν‘œ κΈˆμ§€
# 예) feat : Add login functionality

# λ°”λ‘œ μ•„λž˜ 곡백은 μ§€μš°μ§€ λ§ˆμ„Έμš” (제λͺ©κ³Ό 본문의 뢄리λ₯Ό μœ„ν•¨)

################
# λ³Έλ¬Έ(ꡬ체적인 λ‚΄μš©)을 μ•„λž«μ€„μ— μž‘μ„±
# μ€„λ§ˆλ‹€ "-"둜 ꡬ뢄 (ν•œ 쀄은 72자 이내)
# λ§ˆμ§€λ§‰ 2쀄은 -previously: , - now: 둜 직관적인 μˆ˜μ‹ 등을 ν™œμš©ν•΄ before after μž‘μ„±
# previously/nowλŠ” μ§κ΄€μ μœΌλ‘œ, κ·Έ μœ„μ˜ 본문은 μš”μ•½ λŠλ‚ŒμœΌλ‘œ μž‘μ„±

################
# 꼬릿말(footer)을 μ•„λž«μ€„μ— μž‘μ„± (ν˜„μž¬ 컀밋과 κ΄€λ ¨λœ 이슈 번호 μΆ”κ°€ λ“±)
# 예) Close #7

################
# feat : μƒˆλ‘œμš΄ κΈ°λŠ₯ μΆ”κ°€
# fix : 버그 μˆ˜μ •
# docs : λ¬Έμ„œ μˆ˜μ •
# test : ν…ŒμŠ€νŠΈ μ½”λ“œ μΆ”κ°€
# refact : μ½”λ“œ λ¦¬νŒ©ν† λ§
# style : μ½”λ“œ μ˜λ―Έμ— 영ν–₯을 μ£Όμ§€ μ•ŠλŠ” 변경사항
# chore : λΉŒλ“œ λΆ€λΆ„ ν˜Ήμ€ νŒ¨ν‚€μ§€ λ§€λ‹ˆμ € μˆ˜μ •μ‚¬ν•­
################

ν˜•μ‹ 상세 μ„€λͺ…

제λͺ© (Title)

  • ν˜•μ‹: <νƒ€μž…> : <제λͺ©>
  • 길이: 50자 이내
  • κ·œμΉ™:
    • 변경사항이 β€œλ¬΄μ—‡β€μΈμ§€ λͺ…ν™•νžˆ μž‘μ„±
    • λ§ˆμΉ¨ν‘œ κΈˆμ§€
    • μ˜μ–΄λ‘œ μž‘μ„±

λ³Έλ¬Έ (Body)

  • ꡬ체적인 λ‚΄μš© μž‘μ„±
  • ν•œ 쀄당 72자 이내
  • 각 ν•­λͺ©μ€ β€œ-β€œλ‘œ ꡬ뢄
  • λ§ˆμ§€λ§‰ 두 쀄은 λ³€κ²½ μ „ν›„ 비ꡐ:
    • - previously: 이전 μƒνƒœ
    • - now: ν˜„μž¬ μƒνƒœ
  • κ΄€λ ¨ 이슈 번호 μΆ”κ°€
  • 예: Close #7, Fixes #123

컀밋 νƒ€μž…

νƒ€μž… μ„€λͺ… μ˜ˆμ‹œ
feat μƒˆλ‘œμš΄ κΈ°λŠ₯ μΆ”κ°€ feat : Add user authentication
fix 버그 μˆ˜μ • fix : Resolve memory leak in data parser
docs λ¬Έμ„œ μˆ˜μ • docs : Update README with installation guide
test ν…ŒμŠ€νŠΈ μ½”λ“œ μΆ”κ°€ test : Add unit tests for user service
refact μ½”λ“œ λ¦¬νŒ©ν† λ§ refact : Optimize database query performance
style μ½”λ“œ μ˜λ―Έμ— 영ν–₯ μ—†λŠ” λ³€κ²½ style : Format code with prettier
chore λΉŒλ“œ/νŒ¨ν‚€μ§€ λ§€λ‹ˆμ € μˆ˜μ • chore : Update npm dependencies

쒋은 μ˜ˆμ‹œ vs λ‚˜μœ μ˜ˆμ‹œ

❌ λ‚˜μœ μ˜ˆμ‹œ

fix bug
update
μž‘μ—… μ™„λ£Œ

βœ… 쒋은 μ˜ˆμ‹œ

feat : Add email validation to signup form

- Implement regex pattern for email validation
- Add error message display for invalid emails
- Update form submission logic
- previously: Form accepted any string as email
- now: Form validates email format before submission

Close #42

팁

  • 제λͺ©λ§ŒμœΌλ‘œλ„ 변경사항을 νŒŒμ•…ν•  수 있게 μž‘μ„±
  • λ³Έλ¬Έμ—λŠ” β€œμ™œβ€ λ³€κ²½ν–ˆλŠ”μ§€ μ„€λͺ…
  • previously/now둜 λ³€κ²½ μ „ν›„λ₯Ό λͺ…ν™•νžˆ 비ꡐ
  • νŒ€ ν”„λ‘œμ νŠΈλΌλ©΄ νŒ€μ›κ³Ό κ·œμΉ™ 곡유

λΈ”λ‘œκ·Έ μš΄μ˜μ„ μœ„ν•œ μ΅œμ ν™” 버전

μœ„ ν…œν”Œλ¦Ώμ€ 일반적인 μ†Œν”„νŠΈμ›¨μ–΄ κ°œλ°œμ— μ ν•©ν•˜μ§€λ§Œ, λΈ”λ‘œκ·Έ μš΄μ˜μ—λŠ” λ‹€μ†Œ κ³Όν•  수 μžˆλ‹€λŠ” 것을 κΉ¨λ‹¬μ•˜λ‹€. 포슀트 ν•˜λ‚˜ μΆ”κ°€ν•˜λŠ”λ° previously/nowλ₯Ό μ“°λŠ” 건 μ’€ κ³Όν•˜μ§€ μ•Šλ‚˜?

κ·Έλž˜μ„œ 이 λΈ”λ‘œκ·Έ ν”„λ‘œμ νŠΈμ—μ„œλŠ” λΈ”λ‘œκ·Έ μš΄μ˜μ— μ΅œμ ν™”λœ 버전을 λ³„λ„λ‘œ λ§Œλ“€μ–΄ μ‚¬μš©ν•˜κΈ°λ‘œ ν–ˆλ‹€.

λΈ”λ‘œκ·Έμš© 컀밋 λ©”μ‹œμ§€ ν…œν”Œλ¦Ώ

###############
# IMPORTANT: All commit messages must be written in English
# <νƒ€μž…> : <제λͺ©> 의 ν˜•μ‹μœΌλ‘œ 제λͺ©μ„ μ•„λž˜ 곡백쀄에 μž‘μ„±
# 제λͺ©μ€ 50자 이내 / 변경사항이 "무엇"인지 λͺ…ν™•νžˆ μž‘μ„± / 끝에 λ§ˆμΉ¨ν‘œ κΈˆμ§€
# 예) post : Add Git commit message guidelines

# λ°”λ‘œ μ•„λž˜ 곡백은 μ§€μš°μ§€ λ§ˆμ„Έμš” (제λͺ©κ³Ό 본문의 뢄리λ₯Ό μœ„ν•¨)

################
# post/update νƒ€μž…μΈ 경우: 포슀트 메타정보 μΆ”κ°€ (ν•„μˆ˜)
# Title: 포슀트 제λͺ©
# Date: YYYY-MM-DD
# Category: μΉ΄ν…Œκ³ λ¦¬λͺ…
# Tags: tag1, tag2, tag3
#
# λ³Έλ¬Έ(선택사항) - ν•„μš”μ‹œμ—λ§Œ μž‘μ„±
# μ€„λ§ˆλ‹€ "-"둜 ꡬ뢄 (ν•œ 쀄은 72자 이내)
# μ½”λ“œλ‚˜ μ„€μ • λ³€κ²½ μ‹œ previously/now ν˜•μ‹ μ‚¬μš© ꢌμž₯
# - previously: 이전 μƒνƒœ
# - now: ν˜„μž¬ μƒνƒœ

################
# 꼬릿말(선택사항) - κ΄€λ ¨ μ΄μŠˆκ°€ μžˆμ„ κ²½μš°μ—λ§Œ μž‘μ„±
# 예) Close #7

################
# post : μƒˆ 포슀트 μž‘μ„±
# update : 포슀트 λ‚΄μš© μˆ˜μ •
# feat : λΈ”λ‘œκ·Έ κΈ°λŠ₯ μΆ”κ°€ (ν…Œλ§ˆ, ν”ŒλŸ¬κ·ΈμΈ, νŽ˜μ΄μ§€ λ“±)
# fix : μ˜€νƒ€, 버그, 링크 μˆ˜μ •
# docs : README, λ¬Έμ„œ μˆ˜μ •
# test : ν…ŒμŠ€νŠΈ μ½”λ“œ μΆ”κ°€
# refact : μ½”λ“œ λ¦¬νŒ©ν† λ§
# style : CSS, λ””μžμΈ, λ ˆμ΄μ•„μ›ƒ, ν¬λ§·νŒ… λ³€κ²½
# chore : μ„€μ • 파일, μ˜μ‘΄μ„±, λΉŒλ“œ κ΄€λ ¨
################

일반 ν…œν”Œλ¦Ώκ³Όμ˜ 차이점

ν•­λͺ© 일반 ν…œν”Œλ¦Ώ λΈ”λ‘œκ·Έ μ΅œμ ν™” ν…œν”Œλ¦Ώ
νƒ€μž… 개수 7개 9개 (post, update μΆ”κ°€)
λ³Έλ¬Έ μž‘μ„± ν•„μˆ˜ ꢌμž₯ 선택사항 (κ°„λ‹¨ν•œ 변경은 제λͺ©λ§Œ)
previously/now 항상 μ‚¬μš© ꢌμž₯ μ½”λ“œ/μ„€μ • λ³€κ²½ μ‹œμ—λ§Œ
Footer 이슈 번호 μž‘μ„± 선택사항

λΈ”λ‘œκ·Έ νŠΉν™” νƒ€μž…

μΆ”κ°€λœ 두 κ°€μ§€ νƒ€μž…μœΌλ‘œ λΈ”λ‘œκ·Έ μ½˜ν…μΈ  관리가 훨씬 λͺ…ν™•ν•΄μ§„λ‹€:

νƒ€μž… μ„€λͺ… μ˜ˆμ‹œ
post μƒˆ 포슀트 μž‘μ„± post : Add Docker basic tutorial
update 포슀트 λ‚΄μš© μˆ˜μ • update : Fix code examples in Docker tutorial

κΈ°μ‘΄ νƒ€μž…λ“€μ˜ 의미 λ³€ν™”:

  • feat : μƒˆ κΈ°λŠ₯ β†’ λΈ”λ‘œκ·Έ κΈ°λŠ₯ μΆ”κ°€ (검색, λŒ“κΈ€, ν…Œλ§ˆ λ“±)
  • style : μ½”λ“œ 포맷 β†’ CSS, λ””μžμΈ λ³€κ²½

λΈ”λ‘œκ·Έ 운영 μ˜ˆμ‹œ

1. μƒˆ 포슀트 μž‘μ„±

post : Add Docker basic tutorial

Date: 2025-10-01
Category: tech-tips
Tags: docker, container, tutorial

- Cover Docker installation
- Explain container concepts
- Include practical examples

2. 포슀트 μˆ˜μ •

update : Fix typos in Git commit post

Date: 2025-09-30
Category: tech-tips
Tags: git, commit-message

- Correct spelling mistakes
- Fix broken links

3. λ””μžμΈ λ³€κ²½

style : Update navbar design

- Change background color to dark theme
- previously: Light blue navbar
- now: Dark navy navbar with better contrast

4. λΈ”λ‘œκ·Έ κΈ°λŠ₯ μΆ”κ°€

feat : Add search functionality

- Integrate lunr.js for client-side search
- Add search bar to navigation

5. μ„€μ • λ³€κ²½

chore : Update site configuration

- Change site URL to custom domain
- Update social media links
- previously: url: "https://username.github.io"
- now: url: "https://myblog.com"

Updated:

Comments