Skip to content

Git Convention

OiJs edited this page Jul 19, 2026 · 1 revision

์ด ํŽ˜์ด์ง€๋Š” Notion(AIOT-Team3-InsightON)์—์„œ ์ •๋ฆฌํ•ด ์˜ฎ๊ธด ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ์ตœ์‹  ์›๋ณธ์€ Notion์—์„œ ํ™•์ธํ•˜์„ธ์š”. (์ผํšŒ์„ฑ ์ •๋ฆฌ โ€” ์ž๋™ ๋™๊ธฐํ™” ์•„๋‹˜)

Git Convention

๋ธŒ๋žœ์น˜ ์ „๋žต (Git-Flow ๋ณ€ํ˜•)

  • main: ์ตœ์ข… ๋ฐฐํฌ ๋ธŒ๋žœ์น˜ (์•ˆ์ •)
  • develop: ๊ฐœ๋ฐœ ๋ฉ”์ธ ๋ธŒ๋žœ์น˜ (๋‹ค์Œ ๋ฐฐํฌ ๋ฒ„์ „)
  • feature/[๊ธฐ๋Šฅ๋ช…]: ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ ๋ธŒ๋žœ์น˜ (์˜ˆ: feature/cart)
    • develop ๋ธŒ๋žœ์น˜์—์„œ ๋ถ„๊ธฐํ•ฉ๋‹ˆ๋‹ค.
    • ๊ฐœ๋ฐœ ์™„๋ฃŒ ์‹œ develop ๋ธŒ๋žœ์น˜๋กœ Pull Request (PR)
  • fix/[์ด์Šˆ๋ช…]: ๊ธด๊ธ‰ ๋ฒ„๊ทธ ์ˆ˜์ • ๋ธŒ๋žœ์น˜
  • refactor/[์ด์Šˆ๋ช…]: ๋ฆฌํŒฉํ† ๋ง ๋ธŒ๋žœ์น˜

์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€ ๊ตฌ์กฐ

์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋Š” ํฌ๊ฒŒ ์ œ๋ชฉ, ๋ณธ๋ฌธ, ๊ผฌ๋ฆฟ๋ง ์„ธ ๊ฐ€์ง€ ํŒŒํŠธ๋กœ ๋‚˜๋ˆ„๊ณ , ๊ฐ ํŒŒํŠธ๋Š” ๋นˆ ์ค„์„ ๋‘์–ด์„œ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.

// Header, Body, Footer๋Š” ๋นˆ ํ–‰์œผ๋กœ ๊ตฌ๋ถ„ํ•œ๋‹ค.
ํƒ€์ž…(์Šค์ฝ”ํ”„, type): ์ฃผ์ œ(์ œ๋ชฉ, subject) // Header
<๋นˆ ํ–‰>
๋ณธ๋ฌธ // Body
<๋นˆ ํ–‰>
๋ฐ”๋‹ฅ๊ธ€ // Footer
  • type: ์–ด๋–ค ์˜๋„๋กœ ์ปค๋ฐ‹ํ–ˆ๋Š”์ง€๋ฅผ type์— ๋ช…์‹œํ•ฉ๋‹ˆ๋‹ค.
  • subject: ์ตœ๋Œ€ 50๊ธ€์ž๊ฐ€ ๋„˜์ง€ ์•Š๋„๋ก ํ•˜๊ณ  ๋งˆ์นจํ‘œ๋Š” ์ฐ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์˜๋ฌธ์œผ๋กœ ํ‘œ๊ธฐํ•˜๋Š” ๊ฒฝ์šฐ ๋™์‚ฌ(์›ํ˜•)๋ฅผ ๊ฐ€์žฅ ์•ž์— ๋‘๊ณ  ์ฒซ ๊ธ€์ž๋Š” ๋Œ€๋ฌธ์ž๋กœ ํ‘œ๊ธฐํ•ฉ๋‹ˆ๋‹ค.
  • body: ๊ธด ์„ค๋ช…์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ์— ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ํ–ˆ๋Š”์ง€๊ฐ€ ์•„๋‹ˆ๋ผ, ๋ฌด์—‡์„ ์™œ ํ–ˆ๋Š”์ง€๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ตœ๋Œ€ 75์ž๋ฅผ ๋„˜๊ธฐ์ง€ ์•Š๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
  • footer: issue tracker ID๋ฅผ ๋ช…์‹œํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ์— ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€ ๊ทœ์น™

  1. ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์„ ๋นˆ ํ–‰์œผ๋กœ ๊ตฌ๋ถ„ํ•œ๋‹ค. (๊ฐ•์ œ์‚ฌํ•ญ ์•„๋‹˜ โ€” ํ•œ ์ค„ ์š”์•ฝ์ด ๋” ํšจ์œจ์ ์ผ ์ˆ˜๋„ ์žˆ์Œ)
  2. ์ œ๋ชฉ์€ 50๊ธ€์ž ์ด๋‚ด๋กœ ์ œํ•œํ•œ๋‹ค. (์˜๋ฌธ ๊ธฐ์ค€)
  3. ์ œ๋ชฉ์˜ ์ฒซ ๊ธ€์ž๋Š” ๋Œ€๋ฌธ์ž๋กœ ์ž‘์„ฑํ•œ๋‹ค.
  4. ์ œ๋ชฉ ๋์—๋Š” ๋งˆ์นจํ‘œ๋ฅผ ๋„ฃ์ง€ ์•Š๋Š”๋‹ค.
  5. ์ œ๋ชฉ์€ ๋ช…๋ น๋ฌธ์œผ๋กœ ์‚ฌ์šฉํ•˜๋ฉฐ, ๊ณผ๊ฑฐํ˜•์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
  6. ๋ณธ๋ฌธ์˜ ๊ฐ ํ–‰์€ 72๊ธ€์ž ๋‚ด๋กœ ์ œํ•œํ•œ๋‹ค. (72๊ธ€์ž๋งˆ๋‹ค ์ค„๋ฐ”๊ฟˆ)
  7. ๋ณธ๋ฌธ์€ ์–ด๋–ป๊ฒŒ ๋ณด๋‹ค๋Š” ๋ฌด์—‡๊ณผ ์™œ๋ฅผ ์„ค๋ช…ํ•œ๋‹ค.

์ปค๋ฐ‹ Type

ํ˜•์‹: [Type]: [Subject] (์˜ˆ: Feat: ์žฅ๋ฐ”๊ตฌ๋‹ˆ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ ๊ตฌํ˜„)

์ปค๋ฐ‹ ์œ ํ˜• ์˜๋ฏธ
Feat ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€
Design CSS ๋“ฑ ์‚ฌ์šฉ์ž UI ๋””์ž์ธ ๋ณ€๊ฒฝ
Docs ๋ฌธ์„œ ์ˆ˜์ •
Style ์ฝ”๋“œ formatting, ์„ธ๋ฏธ์ฝœ๋ก  ๋ˆ„๋ฝ, ์ฝ”๋“œ ์ž์ฒด์˜ ๋ณ€๊ฒฝ์ด ์—†๋Š” ๊ฒฝ์šฐ
!BREAKING CHANGE ์ปค๋‹ค๋ž€ API ๋ณ€๊ฒฝ์˜ ๊ฒฝ์šฐ
Comment ํ•„์š”ํ•œ ์ฃผ์„ ์ถ”๊ฐ€ ๋ฐ ๋ณ€๊ฒฝ
Rename ํŒŒ์ผ ๋˜๋Š” ํด๋” ๋ช…์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์˜ฎ๊ธฐ๋Š” ์ž‘์—…๋งŒ์ธ ๊ฒฝ์šฐ
Refactor ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง
Remove ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๋Š” ์ž‘์—…๋งŒ ์ˆ˜ํ–‰ํ•œ ๊ฒฝ์šฐ
Test ํ…Œ์ŠคํŠธ ์ฝ”๋“œ, ๋ฆฌํŒฉํ† ๋ง ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€
Chore ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ์ˆ˜์ •, ๊ทธ ์™ธ ๊ธฐํƒ€ ์ˆ˜์ • (์˜ˆ: .gitignore)
!HOTFIX ๊ธ‰ํ•˜๊ฒŒ ์น˜๋ช…์ ์ธ ๋ฒ„๊ทธ๋ฅผ ๊ณ ์ณ์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ
Fix ๋ฒ„๊ทธ ์ˆ˜์ •
Ci CI ์„ค์ • ํŒŒ์ผ ์ˆ˜์ •
Perf ์„ฑ๋Šฅ ๊ฐœ์„ 

์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋กœ GitHub ์ด์Šˆ ์ž๋™ ์ข…๋ฃŒ์‹œํ‚ค๊ธฐ

์˜๋ฌธ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€์— ์•„๋ž˜ ์˜ˆ์•ฝ์–ด + ์ด์Šˆ๋ฒˆํ˜ธ๋ฅผ ์“ฐ๋ฉด ํ•ด๋‹น ๋ธŒ๋žœ์น˜๊ฐ€ default branch์— ๋จธ์ง€๋  ๋•Œ ์ด์Šˆ๊ฐ€ ์ž๋™์œผ๋กœ ๋‹ซํž™๋‹ˆ๋‹ค.

ํ‚ค์›Œ๋“œ #์ด์Šˆ๋ฒˆํ˜ธ

๋‹ซํž˜์œผ๋กœ ์ธ์‹๋˜๋Š” ํ‚ค์›Œ๋“œ: close closes closed fix fixes fixed resolve resolves resolved

  • close ๊ณ„์—ด์€ ์ผ๋ฐ˜ ๊ฐœ๋ฐœ ์ด์Šˆ
  • fix ๊ณ„์—ด์€ ๋ฒ„๊ทธ ํ”ฝ์Šค/ํ•ซํ”ฝ์Šค ์ด์Šˆ
  • resolve ๊ณ„์—ด์€ ๋ฌธ์˜/์š”์ฒญ ๋Œ€์‘ ์ด์Šˆ

์˜ˆ์‹œ:

Close #31 - refactoring wrap-up

* This is wrap-up of refactoring main code.
* main.c
  * removed old comments
  * fixed rest indentations
  * method extraction at line no. 35

์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ํ•œ ๋ฒˆ์— ๋‹ซ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค: This closes #128, closes #129, and fixes #78.

๊ธฐ๋ณธ ๋ธŒ๋žœ์น˜(์˜ˆ: master)์— ์ปค๋ฐ‹์„ ํ‘ธ์‹œํ•˜๋ฉด ์ฆ‰์‹œ ๋‹ซํžˆ๊ณ , develop์— ํ‘ธ์‹œํ–ˆ๋‹ค๋ฉด develop -> master ๋จธ์ง€ ์‹œ์ ์— ๋‹ซํž™๋‹ˆ๋‹ค.

Issue ๋“ฑ๋ก ์š”๋ น

Label ์ข…๋ฅ˜

  • Setting: ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ์„ธํŒ…
  • Feature: ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ
  • Deploy: ๋ฐฐํฌ ๊ด€๋ จ
  • Html&css: ๋งˆํฌ์—…, ์Šคํƒ€์ผ๋ง
  • BugFix: ๋ฒ„๊ทธ ๊ด€๋ จ
  • CrossBrowsing: ๋ธŒ๋ผ์šฐ์ € ํ˜ธํ™˜์„ฑ
  • Docs: ๋ฌธ์„œ ์ž‘์„ฑ ๋ฐ ์ˆ˜์ •(readme.md) ๋“ฑ
  • API: ์„œ๋ฒ„ API ํ†ต์‹ 
  • Refactor: ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง
  • Question: ์งˆ๋ฌธ ๋˜๋Š” ์ •๋ณด ์š”์ฒญ
  • Accessibility: ์›น ์ ‘๊ทผ์„ฑ ๊ด€๋ จ
  • Test: test ๊ด€๋ จ ์ด์Šˆ

์ž‘์„ฑํ•˜๊ณ  ์‹ถ์€ ์ด์Šˆ ์ข…๋ฅ˜๋ฅผ ์„ ํƒ ํ›„, ์–‘์‹(ํ…œํ”Œ๋ฆฟ)์— ์ž‘์„ฑํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

Pull Request ์ž‘์„ฑ ์š”๋ น

PR ์–‘์‹์— ๋งž์ถ”์–ด ๋‚ด์šฉ ์ž‘์„ฑ ํ›„ PR์„ ๋‚ ๋ ค์ฃผ์„ธ์š”.

PR์—์„œ ์ด์Šˆ ๋‹ซ๋Š” ํ‚ค์›Œ๋“œ ๊ตฌ๋ฌธ

์—ฐ๊ฒฐ๋œ ๋ฌธ์ œ ๊ตฌ๋ฌธ ์˜ˆ์‹œ
๋™์ผํ•œ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ๋ฌธ์ œ KEYWORD #ISSUE-NUMBER Closes #10
๋‹ค๋ฅธ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ๋ฌธ์ œ KEYWORD OWNER/REPOSITORY#ISSUE-NUMBER Fixes octo-org/octo-repo#100
์—ฌ๋Ÿฌ ๋ฌธ์ œ ๊ฐ ๋ฌธ์ œ์— ๋Œ€ํ•ด ์ „์ฒด ๊ตฌ๋ฌธ ์‚ฌ์šฉ Resolves #10, resolves #123, resolves octo-org/octo-repo#100

ํ‚ค์›Œ๋“œ ๋’ค์—๋Š” ์ฝœ๋ก ์ด๋‚˜ ๋Œ€๋ฌธ์ž๋กœ ํ‘œ์‹œ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ: Closes: #10, CLOSES #10, CLOSES: #10.

์ˆ˜๋™์œผ๋กœ ์—ฐ๊ฒฐ๋œ PR๋งŒ ์ˆ˜๋™์œผ๋กœ ์—ฐ๊ฒฐ์„ ํ•ด์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ‚ค์›Œ๋“œ๋กœ ์—ฐ๊ฒฐํ•œ ๋ฌธ์ œ๋ฅผ ์—ฐ๊ฒฐ ํ•ด์ œํ•˜๋ ค๋ฉด PR ์„ค๋ช…์„ ํŽธ์ง‘ํ•ด ํ‚ค์›Œ๋“œ๋ฅผ ์ œ๊ฑฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€์—์„œ ๋‹ซ๋Š” ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋งŒ ์ปค๋ฐ‹์ด ํฌํ•จ๋œ PR์ด default ๋ธŒ๋žœ์น˜์— ๋จธ์ง€๋  ๋•Œ ์ด์Šˆ๋Š” ๋‹ซํžˆ์ง€๋งŒ, ๊ทธ PR ์ž์ฒด๊ฐ€ "์—ฐ๊ฒฐ๋œ PR"๋กœ ํ‘œ์‹œ๋˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค.


์›๋ณธ์— ์žˆ๋˜ ์Šคํฌ๋ฆฐ์ƒท(๋ผ๋ฒจ ํ™”๋ฉด, ์ด์Šˆ ํ…œํ”Œ๋ฆฟ ์„ ํƒ ํ™”๋ฉด, PR ํ…œํ”Œ๋ฆฟ ๋ Œ๋”๋ง ์˜ˆ์‹œ)์€ ์ž„์‹œ ์„œ๋ช… URL์ด๋ผ ์—ฌ๊ธฐ ์˜ฎ๊ธฐ์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•„์š”ํ•˜๋ฉด Notion ์›๋ณธ์—์„œ ํ™•์ธํ•ด์ฃผ์„ธ์š”.

์ฐธ๊ณ  (์šฐํ…Œ์ฝ” ์Šคํƒ€์ผ)

Java ์ฝ”๋“œ ์Šคํƒ€์ผ์€ Code Convention ํŽ˜์ด์ง€์˜ Google Java Style Guide ์š”์•ฝ ๋ฐ ์šฐํ…Œ์ฝ” ํฌ๋งคํ„ฐ ์„ค์ •์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

Clone this wiki locally