Skip to content

Pull Request Convention

์ด์˜์ฐฌ edited this page Oct 6, 2024 · 1 revision

GitHub Flow

  • main ๋ธŒ๋žœ์น˜ (default)

    • main ๋ธŒ๋žœ์น˜๋Š” ๋ฐฐํฌ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ๋งŒ์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ธŒ๋žœ์น˜
    • ๋ฐฐํฌ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ์˜ ์ฝ”๋“œ๋งŒ์„ ๊ด€๋ฆฌํ•˜๋Š” ํ”„๋กœ๋•์…˜์šฉ ๋ธŒ๋žœ์น˜
    • PM(์–‘์žฌ์„œ)์˜ ์Šน์ธ ํ›„ ๋ณ‘ํ•ฉ ๊ฐ€๋Šฅ
      • ๊ธฐ๋Šฅ ์ถ”๊ฐ€์™€ ๊ด€๋ จ๋œ PR์— ๋Œ€ํ•ด ๋ฐ˜๋“œ์‹œ ๋ฆฌ๋ทฐ์–ด ๋“ฑ๋ก
      • MVP release ์ดํ›„์—๋Š” ๋ชจ๋“  PR์— ๋Œ€ํ•ด ๋ฆฌ๋ทฐ์–ด ๋“ฑ๋ก
  • ์ž‘์—… ๋ธŒ๋žœ์น˜

    • ํ‹ฐ์ผ“์ด ํฌํ•จ๋œ ์ž‘์—…์€ {ํ‹ฐ์ผ“๋ฒˆํ˜ธ}-{๋ธŒ๋žœ์น˜๋ช…}๋กœ ๋ธŒ๋žœ์น˜ ๋ช…์„ ์ž‘์„ฑํ•œ๋‹ค.
      • feat/{ํ‹ฐ์ผ“๋ฒˆํ˜ธ}-{๋ธŒ๋žœ์น˜๋ช…}: ์‹ ๊ทœ ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ ์‹œ ๋ธŒ๋žœ์น˜๋ช…
      • fix/{ํ‹ฐ์ผ“๋ฒˆํ˜ธ}-{๋ธŒ๋žœ์น˜๋ช…}: ์ˆ˜์ • ์ž‘์—… ์‹œ ๋ธŒ๋žœ์น˜๋ช…
      • refactor/{ํ‹ฐ์ผ“๋ฒˆํ˜ธ}-{๋ธŒ๋žœ์น˜๋ช…}: ๋ฆฌํŒฉํ† ๋ง ์ž‘์—… ์‹œ ๋ธŒ๋žœ์น˜๋ช…
      • hotfix/{ํ‹ฐ์ผ“๋ฒˆํ˜ธ}-{๋ธŒ๋žœ์น˜๋ช…}: ๋น ๋ฅด๊ฒŒ ์ˆ˜์ •ํ•ด์•ผ ํ•˜๋Š” ๋ฒ„๊ทธ ์กฐ์น˜ ์‹œ ๋ธŒ๋žœ์น˜๋ช…
    • ํ‹ฐ์ผ“์ด ํฌํ•จ๋˜์ง€ ์•Š์€ ์ž‘์—…์€ ๋ช…ํ™•ํ•œ ๋ธŒ๋žœ์น˜๋ช…์„ ์ž‘์„ฑํ•œ๋‹ค.
      • fix/{๋ธŒ๋žœ์น˜๋ช…}
      • hotfix/{๋ธŒ๋žœ์น˜๋ช…}

Pull Request Title Convention

  • Document(๐Ÿ“‘): ๋ฌธ์„œ ์ž‘์—…์„ ์ง„ํ–‰ํ•˜์˜€์„ ๊ฒฝ์šฐ ex) ๐Ÿ“‘ React ๋ฒ„์ „ ์—…๋ฐ์ดํŠธ
  • Setting(โš™๏ธ): ์„ธํŒ…๊ณผ ์ž‘์—…์„ ์ง„ํ–‰ํ•˜์˜€์„ ๊ฒฝ์šฐ ex) โš™๏ธ CI/CD ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ•
  • Feature(โœจ): ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜์˜€์„ ๊ฒฝ์šฐ ex) โœจ ํ”ผ๋“œ ๋ฉ”์ธ ํŽ˜์ด์ง€ UI ๊ตฌ์ถ• ๋ฐ API ์—ฐ๊ฒฐ
  • Fix(๐Ÿ› ๏ธ): ์–ด๋– ํ•œ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ˆ˜์ •์„ ํ•˜์˜€์„ ๊ฒฝ์šฐ ex) ๐Ÿ› ๏ธ ํ”ผ๋“œ ๋ฉ”์ธ API ๋กœ์ง ์ˆ˜์ •
  • UI(๐ŸŽจ): UI ์ž‘์—…๋งŒ์„ ์ง„ํ–‰ํ•˜์˜€์„ ๊ฒฝ์šฐ ex) ๐ŸŽจ ํ”ผ๋“œ ๋ฉ”์ธ ํŽ˜์ด์ง€ UI ์ถ”๊ฐ€/์ˆ˜์ •
  • Feedback(๐Ÿ’ป): ์Šคํ”„๋ฆฐํŠธ ์‹œ์—ฐ๊ฐ„์— ์žˆ์—ˆ๋˜ ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ˜์˜ํ•˜๋Š” ๊ฒฝ์šฐ ex) ๐Ÿ’ป ํ”ผ๋“œ ๋ฉ”์ธ ํŽ˜์ด์ง€ ํ”ผ๋“œ๋ฐฑ ๋ฐ˜์˜
  • Refactor(โšก): ๋ฆฌํŒฉํ† ๋งํ•˜์˜€์„ ๊ฒฝ์šฐ ex) โšก ํ”ผ๋“œ ๊ด€๋ จ API ๋กœ์ง ๋ฆฌํŒฉํ† ๋ง

Pull Request Review Convention

๋ฆฌ๋ทฐ์–ด๋Š” P1๋ถ€ํ„ฐ P5๊นŒ์ง€์˜ ๋‹จ๊ณ„๋กœ ๋ฆฌ๋ทฐ๋ฅผ ์ž‘์„ฑํ•˜๊ณ , ์ž‘์„ฑ์ž๋Š” ๊ฐ ๋‹จ๊ณ„์— ์•Œ๋งž๊ฒŒ ๋Œ€์‘ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

  • P1: ๊ผญ ๋ฐ˜์˜ํ•ด์ฃผ์„ธ์š” (Request changes)
    • ๋ฆฌ๋ทฐ์–ด๋Š” PR์˜ ๋‚ด์šฉ์ด ์„œ๋น„์Šค์— ์ค‘๋Œ€ํ•œ ์˜ค๋ฅ˜๋ฅผ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€๋Šฅ์„ฑ์„ ์ž ์žฌํ•˜๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ, P1 ํƒœ๊ทธ๋ฅผ ํ†ตํ•ด ๋ฐ˜๋“œ์‹œ ์ˆ˜์ •ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค.
    • ์ž‘์„ฑ์ž๋Š” ๋ฆฌ๋ทฐ์–ด์˜ ์š”์ฒญ์„ ๋ฐ˜์˜ํ•˜๊ฑฐ๋‚˜, ๋ฐ˜์˜ํ•  ์ˆ˜ ์—†๋Š” ํ•ฉ๋ฆฌ์ ์ธ ์ด์œ ๋ฅผ ์ œ์‹œํ•˜์—ฌ ์„ค๋“ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • P2: ์ ๊ทน์ ์œผ๋กœ ๊ณ ๋ คํ•ด์ฃผ์„ธ์š” (Request changes)
    • ์ž‘์„ฑ์ž๋Š” ์ˆ˜์ • ์š”์ฒญ์— ๋Œ€ํ•ด์„œ ์ ๊ทน์ ์œผ๋กœ ๊ณ ๋ คํ•˜๋ฉฐ, ์ˆ˜์šฉํ•˜๊ฑฐ๋‚˜ ์ ํ•ฉํ•œ ์˜๊ฒฌ์„ ํ†ตํ•ด ํ† ๋ก ํ•˜์—ฌ ๋ฆฌ๋ทฐ์–ด๋ฅผ ์„ค๋“ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • P3: ์›ฌ๋งŒํ•˜๋ฉด ๋ฐ˜์˜ํ•ด ์ฃผ์„ธ์š” (Comment)
    • ์ž‘์„ฑ์ž๋Š” P3์— ๋Œ€ํ•ด ์ˆ˜์šฉํ•˜๊ฑฐ๋‚˜, ์ˆ˜์šฉํ•  ์ˆ˜ ์—†๋Š” ์ƒํ™ฉ์ด๋ผ๋ฉด ๊ทธ ์ด์œ ๋ฅผ ์„ค๋ช…ํ•˜๊ฑฐ๋‚˜, Issues ๋“ฑ๋ก ํ˜น์€ Jira ํ‹ฐ์ผ“์œผ๋กœ ๋ฐ˜์˜ํ•  ๊ณ„ํš์„ ๋ช…์‹œ์ ์œผ๋กœ ํ‘œํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • P4: ๋ฐ˜์˜ํ•ด๋„ ์ข‹๊ณ  ๋„˜์–ด๊ฐ€๋„ ์ข‹์Šต๋‹ˆ๋‹ค (Approve)
    • ์ž‘์„ฑ์ž๋Š” ๋ฐ˜์˜ํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ฏผํ•ด ๋ณด๋˜, ๋ฌด์‹œํ•ด๋„ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค.
  • P5: ๊ทธ๋ƒฅ ์‚ฌ์†Œํ•œ ์˜๊ฒฌ์ž…๋‹ˆ๋‹ค (Approve)
    • ๋ฌด์‹œํ•ด๋„ ๋˜๋Š” ๊ฐ„๋‹จํ•œ ์˜๊ฒฌ์ž…๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•œ ์งˆ๋ฌธ์ด๋‚˜ ์นญ์ฐฌ์˜ ๊ฒฝ์šฐ ์ด ๋‹จ๊ณ„๋กœ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.