๐Ÿ’Ž ์‚ผ์„ฑ์ฒญ๋…„SW์•„์นด๋ฐ๋ฏธ(SSAFY)/SSAFYcial (๊ธฐ์ž๋‹จ)

[์‹ธํ”ผ์—์„œ ๋ญํ–ˆ๋‹ˆ?] #JIRA # GIT # ์ปจ๋ฒค์…˜

ming412 2024. 7. 28. 16:09

์•ˆ๋…•ํ•˜์„ธ์š”~!! 11๊ธฐ ์ตœ๋ฏผ์ฃผ ๊ธฐ์ž์ž…๋‹ˆ๋‹ค ๐Ÿ‘‹

 

2ํ•™๊ธฐ ์ฒซ ํ”„๋กœ์ ํŠธ๋กœ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ๋Š” ๊ณตํ†ต ํ”„๋กœ์ ํŠธ์—์„œ ์ผ์ • ๊ด€๋ฆฌ์™€ ํ˜•์ƒ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด ์ง€๋ผ(JIRA)์™€ ๊นƒ(Git)์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ ํŒ€์›์ด ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ํ˜‘์—… ๋„๊ตฌ์ธ ๋งŒํผ, ํšจ์œจ์ ์ธ ํ˜‘์—…์„ ์œ„ํ•ด ํŒ€์›๋“ค ๊ฐ„์˜ ๊ณตํ†ต๋œ ์ปจ๋ฒค์…˜์„ ์ •ํ•˜๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ์š”,

๊ทธ ๋‚ด์šฉ์„ ์†Œ๊ฐœํ•ด๋“œ๋ฆฌ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค!

 

JIRA

์ง€๋ผ(JIRA)๋Š” ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ ๋„๊ตฌ๋กœ, ๋‹ค์–‘ํ•œ ์—ํ”ฝ(Epic)์„ ์ƒ์„ฑํ•˜๊ณ  ์ด๋ฅผ ์ฒด๊ณ„์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค.

 

์ž‘์—… ์œ ํ˜•

Epic

  • ํฐ ๋‹จ์œ„์˜ ์—…๋ฌด (์—ฌ๋Ÿฌ User Story, Task ๋“ฑ์„ ๋ฌถ์€ ๋‹จ์œ„)
  • ์ƒ์„ฑ Convention
    • ์š”๊ตฌ์‚ฌํ•ญ ๋ช…์„ธ์„œ์˜ ๋Œ€๋ถ„๋ฅ˜๋ฅผ ์ ์–ด์ค€๋‹ค.

 

Task

  • ํ•ด๋‹น Epic์˜ ํ•˜์œ„ ๋‹จ์œ„ ์ž‘์—…์œผ๋กœ ์ง์ ‘์ ์ธ ๊ธฐ๋Šฅ ๊ตฌํ˜„์„ ๊ธฐ๋ณธ์œผ๋กœ ํ•œ๋‹ค.
  • ์ƒ์„ฑ Convention
    • ์š”๊ตฌ์‚ฌํ•ญ ๋ช…์„ธ์„œ์˜ ์ค‘๋ถ„๋ฅ˜๋ฅผ ์ ์–ด์ค€๋‹ค.

 

SubTask

  • Story, Task๋ฅผ ๋” ์ž‘์€ ๋‹จ์œ„๋กœ ๋‚˜๋ˆˆ ์—…๋ฌด
  • ์ฆ‰, ๋ชจ๋“  SubTask๊ฐ€ ๋๋‚˜์•ผ ํ•ด๋‹น ์—…๋ฌด ์ข…๋ฃŒ
  • ์ƒ์„ฑ Convention
    • ๊ธฐ๋Šฅ๋ช…์„ธ์„œ์˜ ID ๋ฅผ ์ ์–ด์ค€๋‹ค.

 

ํ˜„์žฌ JIRA ํ˜„ํ™ฉ,,

 

 

์Šคํ”„๋ฆฐํŠธ

  • ๊ฐ ์Šคํ”„๋ฆฐํŠธ๋Š” 1์ฃผ์ผ์„ ๊ธฐ์ค€์œผ๋กœ ์ง„ํ–‰ํ•œ๋‹ค.
  • ๊ฐ ์Šคํ”„๋ฆฐํŠธ ๊ธฐ์ค€์œผ๋กœ ์ผ์ธ๋‹น 40 Point์˜ ์Šคํ† ๋ฆฌ ํฌ์ธํŠธ๊ฐ€ ๋ถ€์—ฌ๋œ๋‹ค.
    • ํ•˜๋ฃจ์— 8 Point (8์‹œ๊ฐ„) * 5 = 40 Point
  • ์Šคํ”„๋ฆฐํŠธ ๊ณผ์ •
    1. ๋กœ๋“œ ๋งต์—์„œ ์—ํ”ฝ ์ƒ์„ฑ
    2. ๋ฐฑ๋กœ๊ทธ์—์„œ ์ด์œ  ์ƒ์„ฑ
    3. ์ด์Šˆ์— ์—ํ”ฝ ์—ฐ๊ฒฐ ๋ฐ ์Šคํ† ๋ฆฌ ํฌ์ธํŠธ ์„ค์ •
    4. ์Šคํ”„๋ฆฐํŠธ๋กœ ์ด์Šˆ ์ด๋™
    5. ์Šคํ”„๋ฆฐํŠธ ์‹œ์ž‘
    6. ์ด์Šˆ ๊ด€๋ฆฌ
    7. ์Šคํ”„๋ฆฐํŠธ ์ข…๋ฃŒ

 

GIT

๊นƒ(GIT)์€ ์†Œ์Šค ์ฝ”๋“œ ๋ฒ„์ „ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ๋„๊ตฌ๋กœ, ์—ฌ๋Ÿฌ ๋ช…์ด ๋™์‹œ์— ์ž‘์—…์„ ํ•˜๋”๋ผ๋„ ์ถฉ๋Œ ์—†์ด ํšจ์œจ์ ์œผ๋กœ ํ˜‘์—…ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค. 

 

์ปค๋ฐ‹ ์ปจ๋ฒค์…˜

Header

  • ์ œ๋ชฉ์€ ์ตœ๋Œ€ 50๊ธ€์ž๋ฅผ ๋„˜๊ธฐ์ง€ ์•Š๋Š”๋‹ค.
  • ๋งˆ์นจํ‘œ ๋ฐ ํŠน์ˆ˜๊ธฐํ˜ธ๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • ์œ ํ˜•(Feat, Fix, ..)์„ ์ œ์™ธํ•˜๊ณ ๋Š” ํ•œ๊ตญ์–ด๋กœ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
์†Œ์†Œํ•œ ํŒ!
Git-Hook๊ณผ Husky๋ฅผ ์ด์šฉํ•ด ๊นƒ๋ชจ์ง€๋ฅผ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ๋‹ต๋‹ˆ๋‹คใ…Žใ…Ž
https://kyechan99.github.io/post/lib/husky

 

๊นƒ๋ชจ์ง€๋กœ ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€ ๊พธ๋ฏธ๊ธฐ

 

Body

  • ์–‘์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๊ณ  ์ตœ๋Œ€ํ•œ ์ƒ์„ธํžˆ ์ž‘์„ฑํ•œ๋‹ค.
  • ์–ด๋–ป๊ฒŒ ๋ณ€๊ฒฝํ–ˆ๋Š”์ง€ ๋ณด๋‹ค ๋ฌด์—‡์„, ์™œ ๋ณ€๊ฒฝํ–ˆ๋Š”์ง€๋ฅผ ์„ค๋ช…ํ•œ๋‹ค.
  • ์˜ˆ์‹œ
๐ŸŽ Chore: docker ์„ค์ • 

- mysql, spring boot ์ถ”๊ฐ€ 
- application.yml secret ๋ถ€๋ถ„์ˆ˜์ • 
- #S11P12A604-90

 

๋ธŒ๋žœ์น˜ ๋„ค์ด๋ฐ ๋ฃฐ

master branch

  • ๋ฐฐํฌ ๊ฐ€๋Šฅํ•œ ์ตœ์ข… ๋ฒ„์ „์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ธŒ๋žœ์น˜
  • master ๋ธŒ๋žœ์น˜๋Š” ๋ณธ๋ž˜ ์ด๋ฆ„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ผ๋ฐ˜์ ์ด๋‹ค.

 

develop branch

  • ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ ๋ฐ ํ†ตํ•ฉ ์ž‘์—…์ด ์ด๋ฃจ์–ด์ง€๋Š” ๋ธŒ๋žœ์น˜
  • develop ๋ธŒ๋žœ์น˜๋Š” ๋ณธ๋ž˜ ์ด๋ฆ„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ผ๋ฐ˜์ ์ด๋‹ค.

 

feature branch

  • ํŠน์ • ๊ธฐ๋Šฅ์ด๋‚˜ ๊ฐœ์„ ์‚ฌํ•ญ์„ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•ด ๋ถ„๊ธฐ๋œ ์ž„์‹œ ๋ธŒ๋žœ์น˜
  • `feature/jira{Jira_Story_ID}-{๊ธฐ๋Šฅ์š”์•ฝ}` ํ˜•์‹์œผ๋กœ ์ž‘์„ฑํ•œ๋‹ค.
  • ์˜ˆ์‹œ
feature/jira30-kakao-api

 

release branch

  • ๋ฐฐํฌ ์ค€๋น„๋ฅผ ์œ„ํ•ด ์ตœ์ข… ํ…Œ์ŠคํŠธ์™€ ๋ฒ„๊ทธ ์ˆ˜์ •์„ ์ง„ํ–‰ํ•˜๋Š” ๋ธŒ๋žœ์น˜
  • `release-...` ํ˜•์‹์„ ์ถ”์ฒœํ•œ๋‹ค.
  • ์˜ˆ์‹œ
release-1.2

 

hotfix branch

  • ๊ธด๊ธ‰ํ•˜๊ฒŒ ๋ฐœ์ƒํ•œ ๋ฌธ์ œ๋ฅผ ์ˆ˜์ •ํ•˜๊ธฐ ์œ„ํ•ด ๋ถ„๊ธฐ๋œ ๋ธŒ๋žœ์น˜
  • `hotfix-...` ํ˜•์‹์„ ์ถ”์ฒœํ•œ๋‹ค.
  • ์˜ˆ์‹œ
hotfix-1.2.1

 

๊ทธ๋Ÿผ ๋‹ค์Œ ๊ธฐ์‚ฌ๋กœ ๋งŒ๋‚˜์š”! ์•ˆ๋…•-! ๐Ÿ‘‹