๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Git ๊ด€๋ จ

[GIT] : git convention

by ๊ถŒ์Šพํ–„ 2023. 7. 25.

Git convention ?

Git ์ปจ๋ฒค์…˜์€ Git์„ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์ ํŠธ์—์„œ์˜ commit ๊ทœ์น™๊ณผ ๊ฐ€์ด๋“œ๋ผ์ธ์˜ ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค.

์œ„ ์ปจ๋ฒค์…˜์€ ์ฝ”๋“œ ๋ณ€๊ฒฝ ์ด๋ ฅ์„ ๋” ๋ช…ํ™•ํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๊ณ  ํ˜‘์—…์„ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

 

์‚ฌ์šฉ ๋ชฉ์ 

  • ๋ฌธ์„œํ™” : ์ฝ”๋“œ ๋ณ€๊ฒฝ๋‚ด์šฉ์„ ๊ธฐ๋กํ•จ์œผ๋กœ์จ ๋ˆ„๊ฐ€, ์–ธ์ œ, ์–ด๋–ค ๋ณ€๊ฒฝ์ž‘์—…์„ ์ง„ํ–‰ํ–ˆ๋Š”์ง€๋ฅผ ๋ฌธ์„œํ™” ํ•  ์ˆ˜ ์žˆ๋‹ค.
    ์„œ๋กœ ์ž‘์—…ํ•œ ์ฝ”๋“œ์˜ ๋‚ด์šฉ ์ดํ•ด๋ฅผ ๋•๊ธฐ์œ„ํ•ด ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋‹ค.
  • ํ˜‘์—…: ๋‹ค์ˆ˜์˜ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋™์‹œ์— ์ž‘์—…ํ•  ๋•Œ, ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋ช…ํ™•ํ•˜๊ฒŒ ์ •์˜ํ•˜๊ณ , ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์•Œ๋ฆฌ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•œ๋‹ค.
    ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์ฝ”๋“œ ์ถฉ๋Œ์„ ์ตœ์†Œํ™”ํ•˜๊ณ  ํŒ€์› ๊ฐ„์˜ ์ดํ•ด๊ด€๊ณ„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค.
  • ์ž๋™ํ™”: ์ผ๋ถ€ ๋„๊ตฌ ๋ฐ ์„œ๋น„์Šค๋Š” Git ์ปจ๋ฒค์…˜์„ ํ™œ์šฉํ•˜์—ฌ ์ž๋™์œผ๋กœ ๋ฒ„์ „ ๋ฆด๋ฆฌ์Šค ๋…ธํŠธ๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ํŠน์ • ์ž‘์—…์„ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

Type

์ผ๋ฐ˜์ ์œผ๋กœ Git ์ปจ๋ฒค์…˜์€ ๋ณ€๊ฒฝ ๋‚ด์šฉ์˜ "ํƒ€์ž…"์„ ์ •์˜ํ•œ๋‹ค.
์ด ํƒ€์ž…์€ ์–ด๋–ค ์ข…๋ฅ˜์˜ ๋ณ€๊ฒฝ์ด ์ด๋ฃจ์–ด์กŒ๋Š”์ง€๋ฅผ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ์ฃผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํƒ€์ž…๋“ค์ด ์‚ฌ์šฉ๋œ๋‹ค.

  • feat: ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • fix: ๋ฒ„๊ทธ ์ˆ˜์ •
  • refactor: ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง (๊ธฐ๋Šฅ ๋ณ€๊ฒฝ ์—†์Œ)
  • chore: ๋นŒ๋“œ ํ”„๋กœ์„ธ์Šค ์—…๋ฐ์ดํŠธ, ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž ์„ค์ • ๋ณ€๊ฒฝ ๋“ฑ๊ณผ ๊ฐ™์€ ๊ธฐํƒ€ ์ž‘์—…
  • style: ์ฝ”๋“œ ์Šคํƒ€์ผ, ํฌ๋งทํŒ… ์ˆ˜์ • (๊ธฐ๋Šฅ ๋ณ€๊ฒฝ ์—†์Œ)
  • docs: ๋ฌธ์„œ ์ˆ˜์ •
  • test: ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€ ๋˜๋Š” ์ˆ˜์ •
  • perf: ์„ฑ๋Šฅ ๊ฐœ์„  ๊ด€๋ จ ๋ณ€๊ฒฝ
  • ci: CI/CD ์„ค์ • ๋ฐ ์Šคํฌ๋ฆฝํŠธ ์ˆ˜์ •

์ด๋Ÿฌํ•œ ํƒ€์ž…์€ ์ฝ”๋“œ ๋ณ€๊ฒฝ ๋‚ด์šฉ์„ ๋น ๋ฅด๊ฒŒ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค„ ์ˆ˜ ์žˆ๋‹ค.

### ์ œ๋ชฉ
# ์ปค๋ฐ‹ ํƒ€์ž…: ์ž‘์—…๋‚ด์šฉ (์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์€ ํ•œ ์ค„ ๋„์›Œ์ฃผ์„ธ์š”)


### ๋ณธ๋ฌธ - ํ•œ ์ค„์— ์ตœ๋Œ€ 72 ๊ธ€์ž๊นŒ์ง€๋งŒ ์ž…๋ ฅํ•˜๊ธฐ  
# ๋ฌด์—‡์„, ์™œ, ์–ด๋–ป๊ฒŒ ํ–ˆ๋Š”์ง€


# ๊ผฌ๋ฆฌ๋ง
# (์„ ํƒ) ์ด์Šˆ๋ฒˆํ˜ธ ์ž‘์„ฑ

#   [์ปค๋ฐ‹ ํƒ€์ž…]  ๋ฆฌ์ŠคํŠธ
#   feat      : ๊ธฐ๋Šฅ (์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ)
#   fix       : ๋ฒ„๊ทธ (๋ฒ„๊ทธ ์ˆ˜์ •)
#   design    : CSS ๋“ฑ ์‚ฌ์šฉ์ž UI ๋””์ž์ธ ๋ณ€๊ฒฝ
#   refactor  : ๋ฆฌํŒฉํ† ๋ง
#   style     : ์Šคํƒ€์ผ (์ฝ”๋“œ ํ˜•์‹, ์„ธ๋ฏธ์ฝœ๋ก  ์ถ”๊ฐ€: ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์— ๋ณ€๊ฒฝ ์—†์Œ)
#   docs      : ๋ฌธ์„œ (๋ฌธ์„œ ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ)
#   test      : ํ…Œ์ŠคํŠธ (ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ: ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์— ๋ณ€๊ฒฝ ์—†์Œ)
#   chore     : ๊ธฐํƒ€ ๋ณ€๊ฒฝ์‚ฌํ•ญ (๋นŒ๋“œ ์Šคํฌ๋ฆฝํŠธ ์ˆ˜์ • ๋“ฑ)
#   post      : ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŠธ ์ถ”๊ฐ€ (์‹ ๊ทœ ํฌ์ŠคํŠธ ์ž‘์„ฑ ๋ฐ ์ˆ˜์ •)
#   rename    : ํŒŒ์ผ ํ˜น์€ ํด๋”๋ช…์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์˜ฎ๊ธฐ๋Š” ์ž‘์—…๋งŒ ํ•˜๋Š” ๊ฒฝ์šฐ
#   remove    : ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๋Š” ์ž‘์—…๋งŒ ์ˆ˜ํ–‰ํ•œ ๊ฒฝ์šฐ
# ------------------
#   [์ฒดํฌ๋ฆฌ์ŠคํŠธ]
#     ์ œ๋ชฉ ์ฒซ ๊ธ€์ž๋Š” ๋Œ€๋ฌธ์ž๋กœ ์ž‘์„ฑํ–ˆ๋‚˜์š”?
#     ์ œ๋ชฉ์€ ๋ช…๋ น๋ฌธ์œผ๋กœ ์ž‘์„ฑํ–ˆ๋‚˜์š”?
#     ์ œ๋ชฉ ๋์— ๋งˆ์นจํ‘œ(.) ๊ธˆ์ง€
#     ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์„ ํ•œ ์ค„ ๋„์›Œ ๋ถ„๋ฆฌํ•˜๊ธฐ
#     ๋ณธ๋ฌธ์— ์—ฌ๋Ÿฌ์ค„์˜ ๋ฉ”์‹œ์ง€๋ฅผ ์ž‘์„ฑํ•  ๋• "-"๋กœ ๊ตฌ๋ถ„ํ–ˆ๋‚˜์š”?
# ------------------

 

Type ์„ ์ด์šฉํ•œ ์‚ฌ์šฉ ์˜ˆ์‹œ

  • feat(user-auth): ์ƒˆ๋กœ์šด ์‚ฌ์šฉ์ž ์ธ์ฆ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • fix(ui): UI ๋ฒ„ํŠผ์ด ์ œ๋Œ€๋กœ ํด๋ฆญ๋˜์ง€ ์•Š๋Š” ๋ฒ„๊ทธ ์ˆ˜์ •

 

Git convention ์„ ์ด์šฉํ•ด๋ณด๋‹ˆ๊นŒ, ๋ถ„์—…์„ ํ†ตํ•œ ์ž‘์—…์˜ ํšจ์œจ์„ฑ์€ ์˜ฌ๋ผ๊ฐ€๊ณ , ํ•ด๋‹น ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•˜๋ฉฐ ๋‹ค์Œ ๋กœ์ง์„ ๊ตฌ์ƒํ•˜๊ธฐ ๊นŒ์ง€์˜ ๊ณผ์ •์ด ๊ต‰์žฅํžˆ ์ค„์–ด๋“ ๋‹ค๋Š”๊ฑธ ์ฒด๊ฐํ–ˆ๋‹ค.

์ž˜ ์งœ์—ฌ์ง„ convention ์„ ํ™œ์šฉํ•˜์—ฌ ํ˜‘์—…์„ ์ง„ํ–‰ํ•œ๋‹ค๋ฉด, ๊ธฐ๋ถ„์ข‹๊ฒŒ ์ด์œ ํ”„๋กœ์ ํŠธ๋ฅผ ํŒ€์›๋“ค๊ณผ ๊ฐ™์ด ์ง„ํ–‰ํ•œ๋‹ค๋Š” ๋А๋‚Œ์œผ๋กœ ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š”๊ฑธ ์•Œ์•˜๋‹ค.

 

#git 
#convention #ํ˜‘์—… #์‚ฌ์šฉ์˜ˆ์‹œ