νμ μ μμ, μ’μ Git μ»€λ° λ©μμ§ μμ±λ²
Gitμ μμ€ μ½λμ μ΄λ ₯μ κ΄λ¦¬νλ λꡬμ΄μ§λ§, μ»€λ° λ©μμ§λ λλ£ κ°λ°μμ λ―Έλμ λμκ² λ³΄λ΄λ μ€μν νΈμ§μ΄κΈ°λ ν©λλ€. νλ‘μ νΈκ° 컀μ§μλ‘ "Update file"μ΄λ "Fix bug"μ κ°μ λͺ¨νΈν λ©μμ§λ νΉμ μμ μ λ³κ²½ μ΄μ λ₯Ό νμ νκΈ° μ΄λ ΅κ² λ§λλλ€. **Conventional Commits**μ κ°μ νμ€ μ»¨λ²€μ μ μ§ν€λ κ²μ μ½λ λ³κ²½μ μλλ₯Ό λͺ νν μ λ¬νκ³ , ν₯ν λ³κ²½ μ΄λ ₯(Changelog)μ μλμΌλ‘ μμ±νλ λ± κ°λ° νλ‘μΈμ€ μ λ°μ ν¨μ¨μ±μ λμ¬μ€λλ€.
λ³Έ μμ±κΈ°λ κ°μ₯ λ리 μ°μ΄λ `type: subject` νμμ λ°λ¦ λλ€. `feat`μ μ¬μ©μμκ² μλ‘μ΄ κ°μΉλ₯Ό μ λ¬νλ κΈ°λ₯ μΆκ° μ μ¬μ©νλ©°, `fix`λ μκΈ°μΉ μμ μ€λ₯λ₯Ό ν΄κ²°νμ λ μ¬μ©ν©λλ€. λν, μ½λ λ‘μ§μ λ³ν μμ΄ κ°λ μ±μ΄λ λ³μλͺ λ±μ κ°μ νλ€λ©΄ `refactor`λ₯Ό, λΉλ μ€ν¬λ¦½νΈλ νκ²½ μ€μ λ³κ²½μ `chore`λ₯Ό μ ννλ κ²μ΄ μ’μ΅λλ€. μ λͺ©μ νμ¬ μμ μ λͺ λ Ήλ¬Έ νν(μ: "Add filter" vs "Added filter")λ‘ μμ±νλ κ²μ΄ νμ€ κ°μ΄λμ λλ€.
μ’μ μ»€λ° λ©μμ§λ "무μμ(What)" μμ νλμ§λ³΄λ€ "μ(Why)" μμ νλμ§μ μ§μ€ν΄μΌ ν©λλ€. λ§μ½ λ³κ²½ μ¬νμ΄ λ³΅μ‘νλ€λ©΄ λ³Έλ¬Έ(Body)μ νμ©νμ¬ λ§₯λ½μ μΆ©λΆν μ€λͺ νμΈμ. μΌκ΄μ± μλ μ»€λ° λ‘κ·Έλ λ²κ·Έ μΆμ μλλ₯Ό λμ΄κ³ ν μ 체μ μ½λ 리뷰 λΆλ΄μ λμ΄μ€λλ€. μ¬νμ°λ μ»€λ° μμ±κΈ°λ₯Ό ν΅ν΄ μ λ¬Έμ μΈ κ°λ° λ‘κ·Έ κ΄λ¦¬λ₯Ό μμν΄λ³΄μΈμ.
μμ£Ό 묻λ μ§λ¬Έ (FAQ)
A: κΉ μ»¨λ²€μ κ°μ΄λμ λ°λ₯΄λ©΄ μ λͺ© λμλ λ§μΉ¨νλ₯Ό μ°μ§ μλ κ²μ κΆμ₯ν©λλ€.
A: 컨벀μ μ λ°λΌ λ€λ₯΄μ§λ§, νμ (feat, fix λ±)μ μλ¬Έμλ‘ μμνκ³ μ½λ‘ (:) λ€μ μ λͺ© 첫 κΈμ μμ μλ¬Έμλ‘ μμνλ νμμ΄ κ°μ₯ 보νΈμ μ λλ€.
A: νλμ 컀λ°μλ νλμ λ Όλ¦¬μ μΈ λ³κ²½ μ¬νλ§ λ΄λ 'Atomic Commit' μμΉμ μ§ν€λ κ²μ΄ μ’μ΅λλ€. λ³κ²½ λ²μκ° λλ€λ©΄ μ¬λ¬ λ² λλμ΄ μ»€λ°νμΈμ.