Skip to content

on-7/marketgg-shop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Market GG Shop Service

Market GG Shop ์„œ๋น„์Šค๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ด์šฉ์— ํ•„์š”ํ•œ API ๋ฅผ ์ œ๊ณตํ•จ์œผ๋กœ์จ ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์„ ๋ฐ›์•„ ๊ทธ์— ์ƒ์‘ํ•˜๋Š” ์„œ๋น„์Šค๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Getting Started

ํ•ด๋‹น ํ”„๋กœ์ ํŠธ๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๊ฑฐ๋‚˜ git clone ์„ ํ†ตํ•ด ์‹คํ–‰ ํ™˜๊ฒฝ์„ ๊ตฌ์„ฑํ•œ ๋’ค, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

./mvnw spring-boot:run

Project Architecture

marketgg-architecture-v1-0-4

Features

  • ์นดํ…Œ๊ณ ๋ฆฌ ๊ด€๋ฆฌ (Co-authored-by: @๋ฐ•์„ธ์™„)
    • ์นดํ…Œ๊ณ ๋ฆฌ ๋ถ„๋ฅ˜ํ‘œ ๋ชฉ๋ก ์กฐํšŒ
    • ์นดํ…Œ๊ณ ๋ฆฌ ๋ถ„๋ฅ˜๋ฒˆํ˜ธ, ์นดํ…Œ๊ณ ๋ฆฌ ๋ฒˆํ˜ธ, ์ด๋ฆ„, ๋‚˜์—ด์ˆœ์„œ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ์นดํ…Œ๊ณ ๋ฆฌ ๋“ฑ๋ก
    • ์นดํ…Œ๊ณ ๋ฆฌ ๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ์นดํ…Œ๊ณ ๋ฆฌ ๋‹จ๊ฑด ์กฐํšŒ
    • ์นดํ…Œ๊ณ ๋ฆฌ ๋ถ„๋ฅ˜๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ์นดํ…Œ๊ณ ๋ฆฌ ๋ชฉ๋ก ์กฐํšŒ
    • ์ „์ฒด ์นดํ…Œ๊ณ ๋ฆฌ ๋ชฉ๋ก ์กฐํšŒ
    • ์นดํ…Œ๊ณ ๋ฆฌ ์ด๋ฆ„, ๋‚˜์—ด์ˆœ์„œ ์ˆ˜์ •
    • ์นดํ…Œ๊ณ ๋ฆฌ ๋‹จ๊ฑด ์‚ญ์ œ
  • ์ฐœ ๊ด€๋ฆฌ
    • ์ฐœ ๋“ฑ๋ก, ํ•ด์ œ
    • ์ฐœํ•œ ์ƒํ’ˆ ๋ชฉ๋ก ์กฐํšŒ
  • ์ฟ ํฐ ๊ด€๋ฆฌ
    • ์ฟ ํฐ ๋“ฑ๋ก, ๋‹จ๊ฑด ์กฐํšŒ, ๋ชฉ๋ก ์กฐํšŒ, ์ˆ˜์ •, ์‚ญ์ œ
  • ์ฃผ๋ฌธ ๊ด€๋ฆฌ
    • ๊ธฐ๋Šฅ ๊ตฌํ˜„ ์ค‘
  • ๊ณ ๊ฐ์„ผํ„ฐ ๊ด€๋ฆฌ - 1:1 ๋ฌธ์˜ (Co-authored-by: @๋ฐ•์„ธ์™„)
    • 1:1 ๋ฌธ์˜ ๋“ฑ๋ก
    • 1:1 ๋ฌธ์˜ ๋‹จ๊ฑด ์กฐํšŒ
    • 1:1 ๋ฌธ์˜ ๋ชฉ๋ก ์กฐํšŒ
    • 1:1 ๋ฌธ์˜ ์‚ญ์ œ
    • 1:1 ๋ฌธ์˜ ๋‹ต๋ณ€
  • ์‚ฌ์šฉ์ž ๊ด€๋ฆฌ
    1. ์„ธ๋ถ€ ์—…๋ฌด ์„ค๋ช…
    2. ์„ธ๋ถ€ ์—…๋ฌด ์„ค๋ช…
  • ๋ฐฐ์†ก ๊ด€๋ฆฌ
    • ๊ธฐ๋Šฅ ๊ตฌํ˜„ ์ค‘
  • ์ƒํ’ˆ ๊ด€๋ฆฌ
    • ์ƒํ’ˆ ๋“ฑ๋ก ๊ตฌํ˜„
      • Apache Commons File Upload ๋ฅผ ์‚ฌ์šฉํ•œ ๋กœ์ปฌ ์—…๋กœ๋“œ ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ์ƒํ’ˆ ๋ฌธ์˜ ๊ด€๋ฆฌ
    • ์ƒํ’ˆ๋ฌธ์˜ ๋“ฑ๋ก, ์กฐํšŒ, ์‚ญ์ œ
    • ์ƒํ’ˆ๋ฌธ์˜ ๊ด€๋ฆฌ์ž ๋‹ต๊ธ€ ๋“ฑ๋ก
  • ์ฟ ํฐ ๊ด€๋ฆฌ
    • ์‚ฌ์šฉ์ž์—๊ฒŒ ์ง€๊ธ‰๋˜๋Š” GivenCoupon ๋“ฑ๋ก, ์‚ญ์ œ, ์กฐํšŒ
    • ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์šฉํ•˜๋ฉด ๊ธฐ๋ก์— ๋‚จ๋Š” UsedCoupon ์ƒ์„ฑ, ์‚ญ์ œ
  • ์นดํ…Œ๊ณ ๋ฆฌ ๊ด€๋ฆฌ (Co-authored-by: @๊น€์ •๋ฏผ)
    • ์นดํ…Œ๊ณ ๋ฆฌ ๋ถ„๋ฅ˜ํ‘œ ๋ชฉ๋ก ์กฐํšŒ
    • ์นดํ…Œ๊ณ ๋ฆฌ ๋ถ„๋ฅ˜๋ฒˆํ˜ธ, ์นดํ…Œ๊ณ ๋ฆฌ ๋ฒˆํ˜ธ, ์ด๋ฆ„, ๋‚˜์—ด์ˆœ์„œ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ์นดํ…Œ๊ณ ๋ฆฌ ๋“ฑ๋ก
    • ์นดํ…Œ๊ณ ๋ฆฌ ๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ์นดํ…Œ๊ณ ๋ฆฌ ๋‹จ๊ฑด ์กฐํšŒ
    • ์นดํ…Œ๊ณ ๋ฆฌ ๋ถ„๋ฅ˜๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ์นดํ…Œ๊ณ ๋ฆฌ ๋ชฉ๋ก ์กฐํšŒ
    • ์ „์ฒด ์นดํ…Œ๊ณ ๋ฆฌ ๋ชฉ๋ก ์กฐํšŒ
    • ์นดํ…Œ๊ณ ๋ฆฌ ์ด๋ฆ„, ๋‚˜์—ด์ˆœ์„œ ์ˆ˜์ •
    • ์นดํ…Œ๊ณ ๋ฆฌ ๋‹จ๊ฑด ์‚ญ์ œ
  • ๋ผ๋ฒจ ๊ด€๋ฆฌ
    • ์ƒํ’ˆ ๋“ฑ๋ก ์‹œ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š” ๋ผ๋ฒจ ๋“ฑ๋ก
    • ๋“ฑ๋ก๋˜์–ด์žˆ๋Š” ๋ผ๋ฒจ ์‚ญ์ œ
    • ์ „์ฒด ๋ผ๋ฒจ ๋ชฉ๋ก ์กฐํšŒ
  • GG ํŒจ์Šค ๊ด€๋ฆฌ
    • GG ํŒจ์Šค ๊ตฌ๋… ๊ฐฑ์‹ ์ผ ํ™•์ธ
    • GG ํŒจ์Šค ๊ตฌ๋… ์‹ ์ฒญ
    • GG ํŒจ์Šค ๊ตฌ๋… ํ•ด์ง€
  • ํฌ์ธํŠธ ๊ด€๋ฆฌ
    • ๊ฒฐ์ œ ์‹œ ๋“ฑ๊ธ‰๋ณ„ ํšŒ์› ์ ๋ฆฝ๊ธˆ ์ ๋ฆฝ
    • ํฌ์ธํŠธ ์ ๋ฆฝ/์‚ฌ์šฉ ๋‚ด์—ญ ๋“ฑ๋ก
    • ๋งˆ์ผ“ GG ํšŒ์› ์ž์‹ ์˜ ํฌ์ธํŠธ ์ ๋ฆฝ/์‚ฌ์šฉ ๋‚ด์—ญ ๋ชฉ๋ก ์กฐํšŒ
    • ๊ด€๋ฆฌ์ž์˜ ๋งˆ์ผ“ GG ํšŒ์› ์ „์ฒด ํฌ์ธํŠธ ์ ๋ฆฝ/์‚ฌ์šฉ ๋‚ด์—ญ ๋ชฉ๋ก ์กฐํšŒ
  • ๊ณ ๊ฐ์„ผํ„ฐ ๊ด€๋ฆฌ
    1. ๊ณต์ง€์‚ฌํ•ญ
      • ๊ณต์ง€์‚ฌํ•ญ ๋“ฑ๋ก
      • ๊ณต์ง€์‚ฌํ•ญ ๋‹จ๊ฑด ์กฐํšŒ
      • ๊ณต์ง€์‚ฌํ•ญ ๋ชฉ๋ก ์กฐํšŒ
      • ๊ณต์ง€์‚ฌํ•ญ ์ˆ˜์ •
      • ๊ณต์ง€์‚ฌํ•ญ ์‚ญ์ œ
    2. FAQ
      • FAQ ๋“ฑ๋ก
      • FAQ ๋ชฉ๋ก ์กฐํšŒ
      • FAQ ์ˆ˜์ •
      • FAQ ์‚ญ์ œ
  • ์—˜๋ผ์Šคํ‹ฑ ์„œ์น˜
    • LogStash ๋ฅผ ์ด์šฉํ•œ ์—˜๋ผ์Šคํ‹ฑ ์„œ์น˜ ์„œ๋ฒ„์™€ Shop ์„œ๋ฒ„์—์„œ ์‚ฌ์šฉํ•˜๋Š” RDBMS ๋™๊ธฐํ™”
    • LogStash ๋ฅผ ์ด์šฉํ•œ ์—˜๋ผ์Šคํ‹ฑ ์„œ์น˜ ์„œ๋ฒ„ ์—๋Ÿฌ ๋กœ๊น… ์ฒ˜๋ฆฌ
    • Kibana ๋ฅผ ์ด์šฉํ•œ ์—˜๋ผ์Šคํ‹ฑ ์„œ์น˜ ์„œ๋ฒ„ Index ๊ด€๋ฆฌ
    • X-Pack ์„ ์ด์šฉํ•œ ์—˜๋ผ์Šคํ‹ฑ ์„œ์น˜ ์„œ๋ฒ„ ๋ณด์•ˆ ํ™œ์„ฑํ™”
    • ์ƒํ’ˆ/(๊ณ ๊ฐ์„ผํ„ฐ)๊ฒŒ์‹œ๊ธ€ ๋™์˜์–ด ์—ฐ๊ด€์–ด/๋™์˜์–ด ๊ฒ€์ƒ‰
    • ์ƒํ’ˆ/(๊ณ ๊ฐ์„ผํ„ฐ)๊ฒŒ์‹œ๊ธ€ ์˜/ํ•œ ์˜คํƒ€ ๋ณ€ํ™˜ ๊ฒ€์ƒ‰
    • ์ƒํ’ˆ/(๊ณ ๊ฐ์„ผํ„ฐ)๊ฒŒ์‹œ๊ธ€ ๊ฒ€์ƒ‰ ์‹œ ์ž๋™์™„์„ฑ ์ง€์›
    • ์ƒํ’ˆ ์นดํ…Œ๊ณ ๋ฆฌ ๋‚ด ๊ฐ€๊ฒฉ๋ณ„ ๊ฒ€์ƒ‰ ์ง€์›
    • ๊ฒŒ์‹œ๊ธ€ ์นดํ…Œ๊ณ ๋ฆฌ ๋‚ด ์˜ต์…˜๋ณ„ ๊ฒ€์ƒ‰ ์ง€์›
  • ์‚ฌ์šฉ์ž ๊ด€๋ฆฌ
    1. ์„ธ๋ถ€ ์—…๋ฌด ์„ค๋ช…
    2. ์„ธ๋ถ€ ์—…๋ฌด ์„ค๋ช…
  • ์žฅ๋ฐ”๊ตฌ๋‹ˆ ๊ด€๋ฆฌ
    1. ์„ธ๋ถ€ ์—…๋ฌด ์„ค๋ช…
    2. ์„ธ๋ถ€ ์—…๋ฌด ์„ค๋ช…
  • ๊ฒฐ์ œ ๊ด€๋ฆฌ (๊ตฌํ˜„ ์ค‘)
    • ๊ฒฐ์ œ ๋‚ด์—ญ ์ถ”๊ฐ€ ๋ฐ ๊ฒ€์ฆ
    • ์ตœ์ข… ๊ฒฐ์ œ ์š”์ฒญ
      • ์นด๋“œ
      • ๊ฐ€์ƒ๊ณ„์ขŒ
      • ์‹ค์‹œ๊ฐ„ ๊ณ„์ขŒ์ด์ฒด
      • ํœด๋Œ€ํฐ ๊ฒฐ์ œ
    • ๊ฒฐ์ œ ๋‚ด์—ญ ์กฐํšŒ
    • ๊ฐ€์ƒ๊ณ„์ขŒ ๋ฐœ๊ธ‰
  • ๊ฑฐ๋ž˜ ๊ด€๋ฆฌ (๊ตฌํ˜„ ์ค‘)
    • ๊ฑฐ๋ž˜ ๋‚ด์—ญ ์กฐํšŒ
    • ๊ฒฐ์ œ ์ทจ์†Œ
  • ์ƒํ’ˆ ๊ด€๋ฆฌ
    • ์ƒํ’ˆ ๋“ฑ๋ก ๊ธฐ๋Šฅ ๊ตฌํ˜„
      • ์ƒํ’ˆ ๋“ฑ๋ก์‹œ ํ•„์š”ํ•œ ํŒŒ์ผ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ๊ตฌํ˜„
    • ์ƒํ’ˆ ์ˆ˜์ • ๊ธฐ๋Šฅ ๊ตฌํ˜„
    • ์ƒํ’ˆ ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„
      • ์ƒํ’ˆ ์กฐํšŒ์‹œ ๋ณด์ด๋Š” ์‚ฌ์ง„์€ ํŒŒ์ผ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์œผ๋กœ๋ถ€ํ„ฐ ํ•ด๋‹น ์‚ฌ์ง„์ด ์ €์žฅ๋œ URL ์„ ๋ฐ›๋Š”๋‹ค.
    • ์ƒํ’ˆ ์‚ญ์ œ ๊ธฐ๋Šฅ ๊ตฌํ˜„
    • ์ƒํ’ˆ ๋ณต๊ตฌ ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ํ›„๊ธฐ ๊ด€๋ฆฌ
    • ํ›„๊ธฐ ๋“ฑ๋ก ๊ธฐ๋Šฅ ๊ตฌํ˜„
      • ํ›„๊ธฐ ๋“ฑ๋ก์‹œ ํ•„์š”ํ•œ ํŒŒ์ผ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ๊ตฌํ˜„
    • ํ›„๊ธฐ ์ˆ˜์ • ๊ธฐ๋Šฅ ๊ตฌํ˜„
    • ํ›„๊ธฐ ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„
      • ํ›„๊ธฐ ์กฐํšŒ์‹œ ๋ณด์ด๋Š” ์‚ฌ์ง„์€ ํŒŒ์ผ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์œผ๋กœ๋ถ€ํ„ฐ ํ•ด๋‹น ์‚ฌ์ง„์ด ์ €์žฅ๋œ URL ์„ ๋ฐ›๋Š”๋‹ค.
    • ํ›„๊ธฐ ์‚ญ์ œ ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ํŒŒ์ผ ๊ด€๋ฆฌ
    • ๋นˆ์„ ๋™์ ์œผ๋กœ ์ฃผ์ž…๋ฐ›์•„ ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋กœ์ปฌ / Object Storage ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
      • Local
        • ํŒŒ์ผ ์—…๋กœ๋“œ ๊ธฐ๋Šฅ ๊ตฌํ˜„ (์ด๋ฏธ์ง€)
        • ์ด๋ฏธ์ง€ ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„
      • Cloud
        • NHN Cloud - Object Storage ๋ฅผ ์‚ฌ์šฉํ•œ ํŒŒ์ผ ์—…๋กœ๋“œ ๊ธฐ๋Šฅ ๊ตฌํ˜„ (์ด๋ฏธ์ง€)
        • ์ด๋ฏธ์ง€ ์กฐํšŒ ๊ธฐ๋Šฅ ๊ตฌํ˜„

Technical Issue

์—˜๋ผ์Šคํ‹ฑ ์„œ์น˜ (@๋ฐ•์„ธ์™„)

  • ์—˜๋ผ์Šคํ‹ฑ ์„œ์น˜๋Š” ์ž์ฒด์ ์ธ Transaction ์ด ์—†๋‹ค ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌ?
    • LogStash ๋ฅผ ์ด์šฉํ•˜์—ฌ ์ฃผ๊ธฐ๋งˆ๋‹ค ๋ฐ์ดํ„ฐ์˜ ๋™๊ธฐํ™” ์ฒ˜๋ฆฌ๋ฅผ ์ง„ํ–‰
  • ์—˜๋ผ์Šคํ‹ฑ ์„œ์น˜ ์„œ๋ฒ„์˜ ์ž์ฒด์ ์ธ ์˜ค๋ฅ˜๋กœ ์„œ๋น„์Šค๊ฐ€ ๋งˆ๋น„?
    • ์˜ˆ๋น„ ์ธ๋ฑ์Šค๋ฅผ ๋‘๋Š” ํ˜•์‹์œผ๋กœ ํ•ด๊ฒฐ์˜ˆ์ •

์ƒํ’ˆ ๊ด€๋ฆฌ (@์กฐํ˜„์ง„)

์„œ๋ฒ„ ์Šค์ผ€์ผ ์•„์›ƒ์— ๋Œ€๋น„ํ•˜์—ฌ ํŒŒ์ผ ๊ด€๋ฆฌ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•  ๊ฒƒ์ธ๊ฐ€.
โ†’ ๊ธฐ์กด ๋กœ์ปฌ์— ์ €์žฅํ•˜๋˜ ๊ธฐ๋Šฅ โ†’ cloud๋กœ ์ด์ „

๊ทธ๋ ‡๋‹ค๋ฉด ๊ธฐ์กด์˜ ์ฝ”๋“œ๋Š”?
โ†’ ๊ฐ์ฒด ์ง€ํ–ฅ์ ์ธ ์„ค๊ณ„๋ฅผ ํ†ตํ•ด ๊ธฐ์กด ์ฝ”๋“œ์˜ ๋ณ€ํ™” ์—†๋Š” ๊ธฐ๋Šฅ ํ™•์žฅ ๊ณ ๋ ค

์ฟ ํฐ ๊ด€๋ฆฌ (@๋ฏผ์•„์˜)

  • Spring Event โ†’ ํšŒ์›๊ฐ€์ž… ์‹œ ์ฟ ํฐ ์ž๋™ ์ง€๊ธ‰
  • Spring Event โ†’ ๋ฒ ์ŠคํŠธ ํ›„๊ธฐ ์„ ์ • ์‹œ ์ฟ ํฐ ์ž๋™ ์ง€๊ธ‰
  • Scheduler ****โ†’ ๋งค์ผ ์ƒ์ผ์ธ ํšŒ์›์—๊ฒŒ ์ฟ ํฐ ์ž๋™ ์ง€๊ธ‰
  • Batch + Scheduler ****โ†’ ๋งค์›” 1์ผ ํšŒ์› ๋“ฑ๊ธ‰ ์—…๋ฐ์ดํŠธ + ๋“ฑ๊ธ‰์— ๋”ฐ๋ฅธ ์ฟ ํฐ ์ง€๊ธ‰

ํฌ์ธํŠธ ๊ด€๋ฆฌ (@๋ฐ•์„ธ์™„)

  • ํฌ์ธํŠธ ์ ๋ฆฝ/์‚ฌ์šฉ ๋‚ด์—ญ ๋“ฑ๋ก ์‹œ Transaction ์˜ ๊ธฐ์ค€?
  • ์ ๋ฆฝ/์‚ฌ์šฉ์ด ์ ์šฉ๋˜๋Š” ์„œ๋น„์Šค ๋‚ด๋ถ€์— ๋™์ผ Transaction ์œผ๋กœ ๊ด€๋ฆฌ ํ•„์š”

ํ›„๊ธฐ ๊ด€๋ฆฌ (@์กฐํ˜„์ง„)

  • ์„œ๋น„์Šค ๋ ˆ์ด์–ด๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์€ ์˜์กด์„ฑ์„ ๊ฐ–๊ณ  ์žˆ๋‹ค. โ†’ ๊ณ ๋ฏผ์ค‘

๊ณ ๊ฐ์„ผํ„ฐ ๊ด€๋ฆฌ (@๊น€์ •๋ฏผ, @๋ฐ•์„ธ์™„)

  • ๊ณ ๊ฐ์„ผํ„ฐ์˜ 3๊ฐœ์˜ ๊ฒŒ์‹œํŒ ํƒ€์ž…์— ๋Œ€ํ•ด ๋™์ผํ•œ ์ž‘์—… ์ˆ˜ํ–‰
    • ํ•˜๋‚˜์˜ CsPostService ์—์„œ ๊ฐ™์€ ํ–‰์œ„์— ๋Œ€ํ•œ ๋™์ผ ๋ฉ”์†Œ๋“œ๋กœ ์ฒ˜๋ฆฌ
    • ์ปจํŠธ๋กค๋Ÿฌ์˜ @RoleCheck ๋กœ ํ•ด๊ฒฐ๋˜์ง€ ์•Š๋Š” ๋ถ€๋ถ„ Service Layer ์—์„œ ์ฒ˜๋ฆฌ

Tech Stack

Build Tools

ApacheMaven

Datebases

MySQL Elasticsearch

DevOps

GitHubActions SonarQube Docker Logstash Kibana

Frameworks

SpringBoot

Languages

Java

Testing Tools

Junit5

ํ˜•์ƒ ๊ด€๋ฆฌ ์ „๋žต

Git GitHub Sourcetree

Git Flow ์ „๋žต ์ฑ„์šฉ

gitflow-workflow

๋ธŒ๋žœ์น˜ ๊ตฌ๋ถ„

  • main: ๋ฐฐํฌ ์‹œ ์‚ฌ์šฉ
  • develop: ๊ฐœ๋ฐœ ๋‹จ๊ณ„๊ฐ€ ๋๋‚œ ๋ถ€๋ถ„์— ๋Œ€ํ•ด Merge ๋‚ด์šฉ ํฌํ•จ
  • feature/xxx: ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ ๋‹จ๊ณ„
  • hotfix/xxx: Merge ํ›„ ๋ฐœ์ƒํ•œ ๋ฒ„๊ทธ ๋ฐ ์ˆ˜์ •์‚ฌํ•ญ ๋ฐ˜์˜ ์‹œ ์‚ฌ์šฉ

git merge & git rebase ํ™œ์šฉ

์ž‘์—… ์ค‘์ธ feature/xxx ๋ธŒ๋žœ์น˜์™€ ์ง€์†์  ํ†ตํ•ฉ์œผ๋กœ ์ธํ•œ develop ๋ธŒ๋žœ์น˜ ๋™๊ธฐํ™”๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ํ•˜๊ธฐ ์œ„ํ•จ

marketgg-shop - git-reabse

์นธ๋ฐ˜ ๋ณด๋“œ ํ™œ์šฉ

  • ํ˜‘์—… ๋„๊ตฌ Dooray! ์ ๊ทน ํ™œ์šฉ
  • GitHub ์—์„œ ์ œ๊ณตํ•˜๋Š” Issues ์™€ Pull Requests ํ™œ์šฉํ•˜์—ฌ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€ ์ปจ๋ฒค์…˜ ํ™•๋ฆฝ

Dooray! Planning

dooray-scrum-planning

GitHub Projects

marketgg-projects

ERD

marketgg_shop-v2-7-2

Contributors

marketgg-shop-contributors

License

Market GG is released under version 2.0 of the Apache License.