Skip to content

1. Git Convention

choiyoungjin edited this page Jan 1, 2023 · 3 revisions

๊นƒ ์ปจ๋ฒค์…˜ ์š”์•ฝ

1.1. ๋ธŒ๋žœ์น˜๋ช… ์˜ˆ์‹œ

  • dev/๋ธŒ๋žœ์น˜๋ช… ์นดํ…Œ๊ณ ๋ฆฌ-์ž‘์—… ๋‚ด์šฉ
    • dev/feat-main-view
    • dev/add-font-res

1.2. ๋ธŒ๋žœ์น˜๋ช… ์นดํ…Œ๊ณ ๋ฆฌ

  • feat : ๊ตฌํ˜„
  • mod : ์ˆ˜์ •
  • add : ์ถ”๊ฐ€
  • del : ์‚ญ์ œ
  • fix : ๋ฒ„๊ทธ ์ˆ˜์ •
  • refactor : ๋ฆฌํŒฉํ† ๋ง

2.1. ์ปค๋ฐ‹ ์˜ˆ์‹œ

  • [์ปค๋ฐ‹ ์นดํ…Œ๊ณ ๋ฆฌ] #์ด์Šˆ๋ฒˆํ˜ธ ์ปค๋ฐ‹ ๋‚ด์šฉ
    • [feat] #500 ํ™ˆ ๋ทฐ ๊ตฌํ˜„
    • [feat] #500 ๋กœ๊ทธ์ธ ์„œ๋ฒ„ ์—ฐ๋™
    • [mod] #500 ํšŒ์›๊ฐ€์ž… ๋กœ์ง ๋ณ€๊ฒฝ
    • [del] #500 ๋ถˆํ•„์š”ํ•œ import ์ œ๊ฑฐ
    • [mod] #500 MainActivity ์ฝ”๋“œ ์ •๋ ฌ ์ ์šฉ
    • [fix] #500 ํšŒ์›๊ฐ€์ž… ๋ฒ„ํŠผ ํ™œ์„ฑํ™” ๋กœ์ง ๋ฒ„๊ทธ ์ˆ˜์ •

2.2. ์ปค๋ฐ‹ ์นดํ…Œ๊ณ ๋ฆฌ

  • featย : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • modย : ์ฝ”๋“œ ์ˆ˜์ •
  • addย : feat ์ด์™ธ์˜ ๋ถ€์ˆ˜์ ์ธ ์ฝ”๋“œ ์ถ”๊ฐ€, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ถ”๊ฐ€
  • delย : ์“ธ๋ชจ์—†๋Š” ์ฝ”๋“œ ์‚ญ์ œ
  • chore : ๋ณ€์ˆ˜๋ช… ๋ฐ ํ•จ์ˆ˜๋ช… ์ˆ˜์ •๊ณผ ๊ฐ™์€ ์‚ฌ์†Œํ•œ ์ˆ˜์ •
  • fix : ๋ฒ„๊ทธ ์ˆ˜์ •
  • docs : ๋ฌธ์„œ ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ
  • init : ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐ ์„ธํŒ…

3.1. Git Flow

๊ธฐ๋ณธ์ ์œผ๋กœ Git Flow ์ „๋žต์„ ์ด์šฉํ•œ๋‹ค. ์ž‘์—… ์‹œ์ž‘ ์‹œ ์„ ํ–‰๋˜์–ด์•ผ ํ•  ์ž‘์—…์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

1. Issue๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.
2. feature Branch๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.
3. Add - Commit - Push - Pull Request ์˜ ๊ณผ์ •์„ ๊ฑฐ์นœ๋‹ค.
4. Pull Request๊ฐ€ ์ž‘์„ฑ๋˜๋ฉด ์ž‘์„ฑ์ž ์ด์™ธ์˜ ๋‹ค๋ฅธ ํŒ€์›์ด Code Review๋ฅผ ํ•œ๋‹ค.
5. Code Review๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด Pull Request ์ž‘์„ฑ์ž๊ฐ€ dev Branch๋กœ merge ํ•œ๋‹ค.
6. merge๋œ ์ž‘์—…์ด ์žˆ์„ ๊ฒฝ์šฐ, ๋‹ค๋ฅธ ๋ธŒ๋žœ์น˜์—์„œ ์ž‘์—…์„ ์ง„ํ–‰ ์ค‘์ด๋˜ ๊ฐœ๋ฐœ์ž๋Š” ๋ณธ์ธ์˜ ๋ธŒ๋žœ์น˜๋กœ merge๋œ ์ž‘์—…์„ Pull ๋ฐ›์•„์˜จ๋‹ค.
7. ์ข…๋ฃŒ๋œ Issue์™€ Pull Request์˜ Label๊ณผ Project๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค.

3.2. Etc

ํ˜‘์—… ์‹œ ์ค€์ˆ˜ํ•ด์•ผ ํ•  ๊ทœ์น™์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

1. dev์—์„œ์˜ ์ž‘์—…์€ ์›์น™์ ์œผ๋กœ ๊ธˆ์ง€ํ•œ๋‹ค. ๋‹จ, ์ดˆ๊ธฐ ์„ธํŒ… ๋ฐ README ์ž‘์„ฑ์€ dev Branch์—์„œ ์ˆ˜ํ–‰ํ•œ๋‹ค.
2. ์ž์‹ ์ด ๋‹ด๋‹นํ•œ ๋ถ€๋ถ„ ์ด์™ธ์— ๋‹ค๋ฅธ ํŒ€์›์ด ๋‹ด๋‹นํ•œ ๋ถ€๋ถ„์„ ์ˆ˜์ •ํ•  ๋•Œ์—๋Š” Slack์„ ํ†ตํ•ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ „๋‹ฌํ•œ๋‹ค.
3. ๋ณธ์ธ์˜ Pull Request๋Š” ๋ณธ์ธ์ด Mergeํ•œ๋‹ค.
4. Commit, Push, Merge, Pull Request ๋“ฑ ๋ชจ๋“  ์ž‘์—…์€ ์•ฑ์ด ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰๋˜๋Š” ์ง€ ํ™•์ธ ํ›„ ์ˆ˜ํ–‰ํ•œ๋‹ค.
5. README ์ˆ˜์ • ๋ฐ ktlint ์ ์šฉ์„ ์œ„ํ•œ Commit ๋„๋ฐฐ๋Š” ๊ธˆ์ง€ํ•œ๋‹ค. ๋ฆฌ๋“œ๋ฏธ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋Š” Preview๋ฅผ ํ†ตํ•ด ํ™•์ธํ•œ๋‹ค.

3.3 Detail

1. ๊นƒํ—™์—์„œ ์ด์Šˆ ํŒŒ๊ธฐ

- ์ด์Šˆ๋Š” ํ˜„์—… ํ”„๋กœ์ ํŠธ๊ฐ€ ํ”„๋กœ์ ํŠธ๊ฐ€ ์•„๋‹Œ, ์•ฑ์žผ ํ”„๋กœ์ ํŠธ์ด๊ธฐ ๋•Œ๋ฌธ์— ํฐ ๋‹จ์œ„๋กœ ๊ฐ€์ ธ๊ฐ€์ž
- ํƒ€์ดํ‹€ ์˜ˆ์‹œ) `[feat] ํ™ˆ ๋ทฐ ๊ตฌํ˜„ํ•˜๊ธฐ`

2. ์ด์Šˆ๋ฅผ ํŒ ํ›„ ์•ˆ์Šค์—์„œ local์— ์žˆ๋Š” dev๋กœ ์ฒดํฌ์•„์›ƒ ๋ฐ ์ตœ์‹ ํ™”(update)๋ฅผ ์ ์šฉ

1. git ํƒญ > dev ๋ธŒ๋žœ์น˜ ์šฐํด๋ฆญ > update ๋˜๋Š”
2. git fetch origin dev

3. ํ˜„์žฌ local์˜ dev ๋ธŒ๋žœ์น˜์—์„œ ์ž‘์—…ํ•  ๋ธŒ๋žœ์น˜ ํŒŒ๊ธฐ

4. ์ž‘์—… ๋ฐ ์ปค๋ฐ‹ํ•˜๊ธฐ

1. ์ปค๋ฐ‹์€ ์ž˜๊ฒŒ ์ชผ๊ฒŒ์„œ ํ•˜๋Š” ์—ฐ์Šตํ•˜๊ธฐ!
2. ์ปค๋ฐ‹ ๋‚ด์šฉ๋ณ„๋กœ ์นดํ…Œ๊ณ ๋ฆฌ [prefix] ์ž˜ ๋ถ™์—ฌ์ฃผ๊ธฐ!
3. ์ž‘์—… ๋๋‚˜๋ฉด PR์„ ์˜ฌ๋ฆฌ์ง€ ์•Š๋”๋ผ๋„ ํ•ญ์ƒ push๊นŒ์ง€ ํ•ด์ฃผ๊ธฐ

5. Push ํ•˜๊ธฐ

Push์ „ dev ๋ธŒ๋žœ์น˜์— ์ตœ์‹  ๋ณ€๊ฒฝ์‚ฌํ•ญ์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ์žˆ๋‹ค๋ฉด dev๋ธŒ๋žœ์น˜์˜ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ํ˜„์žฌ ์ž‘์—… ๋ธŒ๋žœ์น˜๋กœ ๋จธ์ง€ํ•˜๊ธฐ!

1. ํ•˜๋‹จ git ํƒญ > dev ๋ธŒ๋žœ์น˜ ์šฐํด๋ฆญ > update ํ›„
2. ํ•˜๋‹จ git ํƒญ > dev ๋ธŒ๋žœ์น˜ ์šฐํด๋ฆญ > Merge  dev into โ€˜ํ˜„์žฌ ์ž‘์—… ๋ธŒ๋žœ์น˜โ€™
3. a, b ๋Œ€์‹ ์— git pull origin dev ์‹คํ–‰ ๊ฐ€๋Šฅ
4. ๋จธ์ง€ํ•œ ๋‚ด์šฉ์ด ํ”„๋กœ์ ํŠธ์—์„œ ์ž˜ ์‹คํ–‰๋˜๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ
5. Push ํ•˜๊ธฐ

6. PR ์ž‘์„ฑ

7. Mergeํ•˜๊ธฐ

1. ๋‹ค๋ฅธ ํŒ€์› ์ฝ”๋“œ๋ฆฌ๋ทฐ ๋ฐ›๊ณ , ๋ฐ˜์˜ํ•  ๋‚ด์šฉ์ด ์žˆ๋‹ค๋ฉด ๋ฐ˜์˜ํ•˜๊ธฐ!
2. ์ตœ์†Œ ํ•œ๋ช…์ด์ƒ์˜ ํŒ€์›์—๊ฒŒ approve๋ฅผ ๋ฐ›์€ ๊ฒฝ์šฐ ๋ณธ์ธ์ด Mergeํ•œ๋‹ค.