์ปค๋ฐ ๋ฉ์์ง ์ปจ๋ฒค์
Conventional Commits ๊ธฐ๋ฐ ์ค๋ฌด ์ ์ฉ ๊ฐ์ด๋
๊ธฐ๋ณธ ํ์ (ํ์ค)
์ข์ ์์
Type ์ข
๋ฅ (๊ฐ์ฅ ์ค์)
ํ์
| ์๋ฏธ | ์์ |
feat | ์๋ก์ด ๊ธฐ๋ฅ ์ถ๊ฐ | feat: ๊ฒ์๊ธ ์์ฑ ๊ธฐ๋ฅ |
fix | ๋ฒ๊ทธ ์์ | fix: ๋ก๊ทธ์ธ ์ค๋ฅ ์์ |
docs | ๋ฌธ์ ๋ณ๊ฒฝ | docs: README ์์ |
style | ์ฝ๋ ์คํ์ผ (ํฌ๋งท, ์ธ๋ฏธ์ฝ๋ก ๋ฑ) | style: ํฌ๋งท ์ ๋ฆฌ |
refactor | ๋ฆฌํฉํ ๋ง (๊ธฐ๋ฅ ๋ณํ ์์) | refactor: ์๋น์ค ๊ณ์ธต ๋ถ๋ฆฌ |
test | ํ
์คํธ ์ฝ๋ | test: UserService ํ
์คํธ ์ถ๊ฐ |
chore | ๊ธฐํ ์์
(๋น๋, ์ค์ ๋ฑ) | chore: gradle ์ค์ ๋ณ๊ฒฝ |
build | ๋น๋ ์์คํ
, ์์กด์ฑ | build: ์์กด์ฑ ๋ฒ์ ์
|
ci | CI ์ค์ | ci: GitHub Actions ์ถ๊ฐ |
perf | ์ฑ๋ฅ ๊ฐ์ | perf: ์ฟผ๋ฆฌ ์ต์ ํ |
revert | ์ปค๋ฐ ๋๋๋ฆฌ๊ธฐ | revert: ์๋ชป๋ ์ปค๋ฐ ์ทจ์ |
Subject ์์ฑ ๊ท์น
โข
50์ ์ด๋ด๋ก ๊ฐ๊ฒฐํ๊ฒ
โข
๋ช
๋ นํ, ํ์ฌํ ์ฌ์ฉ (๊ณผ๊ฑฐํ
)
โข
๋ง์นจํ ์ฌ์ฉํ์ง ์๊ธฐ
โข
์ฒซ ๊ธ์๋ ์๋ฌธ์ (์๋ฌธ ๊ธฐ์ค)
๋์ ์
์ข์ ์
Scope (์ ํ์ฌํญ)
๋ณ๊ฒฝ ์ฌํญ์ด ์ํฅ์ ๋ฏธ์น๋ ๋ฒ์/๋ชจ๋์ ๋ช
์ํฉ๋๋ค.
Scope ์์: auth, user, admin, db, api, ui, core, config ๋ฑ
Body (๋ณธ๋ฌธ, ์ ํ์ฌํญ)
๋ฌด์์, ์ ๋ณ๊ฒฝํ๋์ง ์์ธํ๊ฒ ์ค๋ช
ํฉ๋๋ค.
Footer (ํธํฐ, ์ ํ์ฌํญ)
์ด์ ํธ๋์ปค์ ์ฐ๋ํ๊ฑฐ๋ Breaking Change๋ฅผ ๋ช
์ํฉ๋๋ค.
์ด์ ์ฐ๋
Breaking Change
ํ๊ธ vs ์์ด?
ํ๊ธ ์ฌ์ฉ
โข
์ฝ๊ธฐ ์ฝ๊ณ ์ดํด๊ฐ ๋น ๋ฆ
โข
ํ๊ตญ ํ์ ์ ํฉ
์์ด ์ฌ์ฉ
โข
๊ตญ์ ํ์
์ ์ ๋ฆฌ
โข
์คํ์์ค ๊ธฐ์ฌ ์ ํ์
์ค๋ฌด์ฉ ์ถ์ฒ ์ปจ๋ฒค์
๊ฐ์ธ / ์๊ท๋ชจ ํ
โ Type๋ง ๋ช
ํํ, Scope๋ ์๋ต ๊ฐ๋ฅ
์ค๋ํ ํ / ๊ธฐ์
โ Scope ํ์, ๋ชจ๋๋ณ ๊ด๋ฆฌ ๋ช
ํ
์คํ์์ค
โ ์์ด ์ฌ์ฉ, ์ด์ ์ฐ๋, Breaking Change ๋ช
์
์ค๋ฌด ์ปค๋ฐ ์์ ๋ชจ์
ํ๋ก ํธ์๋
๋ฐฑ์๋
ํ
์คํธ
์ธํ๋ผ / DevOps
๋ฌธ์
์ค๋ฌด ํ (์ค์)
1. ํ ์ปค๋ฐ = ํ ๋ชฉ์
2. ์ปค๋ฐ ๋ฉ์์ง๋ง ๋ณด๊ณ ๋ณ๊ฒฝ ์ฌํญ ํ์
๊ฐ๋ฅํด์ผ ํจ
3. ์์ฃผ ์ปค๋ฐํ๊ธฐ
4. ์ปค๋ฐ ์ ๋ฆฌ๋ทฐํ๊ธฐ
5. Breaking Change๋ ๋ฐ๋์ ๋ช
์
ํ ์ค ์์ฝ
์ปค๋ฐ ๋ฉ์์ง๋ "๋ฌด์์ ์ ํ๋์ง"๋ฅผ ์งง๊ณ ๋ช
ํํ๊ฒ ๋จ๊ธฐ๋ ๊ธฐ๋ก
๋ฏธ๋์ ๋์ ํ์์ ์ํ ๊ฐ์ฅ ์ค์ํ ๋ฌธ์์
๋๋ค!
์ฐธ๊ณ ํ๊ธฐ
์ปค๋ฐ ํ
ํ๋ฆฟ ์ค์ ํ๊ธฐ (์๋ํ)
Git Hook์ผ๋ก ์ปค๋ฐ ๊ท์น ๊ฐ์ ํ๊ธฐ
IntelliJ / VSCode ์ปค๋ฐ ๋ฉ์์ง ํ๋ฌ๊ทธ์ธ ์ฌ์ฉ
Commitizen ์ค์น (๋ํํ ์ปค๋ฐ ๋๊ตฌ)
ํ ์ปค๋ฐ ์ปจ๋ฒค์
๋ฌธ์ํ ๋ฐ ๊ณต์


