Team Rules - codestates/pomodoro GitHub Wiki

Team Rules

  • ๊ธฐํš ํšŒ์˜๋Š” ์ „์› ์ฐธ์„ํ•œ๋‹ค.
  • ์˜คํ›„ 2์‹œ ~ 6์‹œ๋Š” ํ•ญ์‹œ ์—ฐ๋ฝ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•œ๋‹ค.
  • ์ž‘์—… ์‹œ ๊ธฐํš ๋‹จ๊ณ„์— ์‚ฌ์šฉํ•œ ํ˜‘์—… ํˆด์„ ์ ๊ทน ์ด์šฉํ•œ๋‹ค.

์ž‘์—… ์ค‘ ๊ธฐํš ๋‚ด์šฉ์— ์ˆ˜์ •์‚ฌํ•ญ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํŒ€์›๋“ค๊ณผ ํ† ์˜ํ•œ๋‹ค. ์ฃผ๋ง์€ ์ž์œ ๋กญ๊ฒŒ ์ž‘์—…ํ•œ๋‹ค.

๐Ÿ‘‰ Commit Convention

Commit Header

  • {commit header}: {commit title} (#{issue number})

Commit Body

์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€๋Š” ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์œผ๋กœ ๋‚˜๋ˆ„์–ด ์ง‘๋‹ˆ๋‹ค. ํ•œ ์ค„๋งŒ ์ž‘์„ฑํ•ด๋„ ์„ค๋ช…์ด ์ถฉ๋ถ„ํ•˜๋‹ค๋ฉด ์ œ๋ชฉ๋งŒ์œผ๋กœ๋„ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์–ด๋–ค ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ๋Š”์ง€ ๋งฅ๋ฝ๊ณผ ์„ค๋ช…์ด ํ•„์š”ํ•˜๋‹ค๋ฉด ๋ณธ๋ฌธ์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์„ ์ž‘์„ฑํ•˜๋Š” ๊ทœ์น™์ž…๋‹ˆ๋‹ค.

  1. ์ œ๋ชฉ๊ณผ ๋ณธ๋ฌธ์„ ํ•œ ์ค„ ๋„์›Œ ๋ถ„๋ฆฌํ•ด ์ฃผ์„ธ์š”.
  2. ์ œ๋ชฉ์€ 50์ž ์ด๋‚ด๋กœ ์ ์–ด์ฃผ์„ธ์š”.
  3. ์ œ๋ชฉ ์ฒซ๊ธ€์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ์ ์–ด์ฃผ์„ธ์š”.
  4. ์ œ๋ชฉ ๋์— . ๋Š” ๊ธˆ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  5. ์ œ๋ชฉ์€ ๋ช…๋ น์–ด๋กœ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
  6. ๋ณธ๋ฌธ์€ 50์ž๋งˆ๋‹ค ์ค„์„ ๋ฐ”๊ฟ”์ฃผ์„ธ์š”.
  7. ๋ณธ๋ฌธ์€ ์–ด๋–ป๊ฒŒ ๋ณ€๊ฒฝํ–ˆ๋Š”์ง€ ๋ณด๋‹ค ๋ฌด์—‡์„ ๋ณ€๊ฒฝํ–ˆ๋Š”์ง€, ์™œ ๋ณ€๊ฒฝํ–ˆ๋Š”์ง€ ์— ๋งž์ถ”์–ด ์ž‘์„ฑํ•˜์„ธ์š”.
  • EX )
โœจfeat: Something (#1)
- body1
- body2
Commit header ์ข…๋ฅ˜ ์ด๋ชจ์ง€ Commit ํƒ€์ž… ์„ค๋ช…
New Feature โœจ:sparkles: feat: ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ปค๋ฐ‹
Fix :wrench::wrench: fix: ๊ธฐ๋Šฅ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ปค๋ฐ‹
Bug ๐Ÿž:bug: bug: ๋ฒ„๊ทธ ๊ด€๋ จ์— ๋Œ€ํ•œ ์ปค๋ฐ‹
Working In Process โš™:gear: wip: ์ง„ํ–‰ ์ค‘์ธ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ปค๋ฐ‹
Refactor Code :broom: :broom: refactor: ์ฝ”๋“œ ๋ฌธ๋ฒ•, ํฌ๋งท(prettier) ๋“ฑ ๋ฆฌํŒฉํ† ๋ง์— ๋Œ€ํ•œ ์ปค๋ฐ‹
Documentation ๐Ÿ“š :books: docs: ๋„ํ๋จผํŠธ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ปค๋ฐ‹
Styling UI ๐ŸŽจ:art: style: HTML, CSS, ์˜คํƒ€ ์ˆ˜์ •์— ๋Œ€ํ•œ ์ปค๋ฐ‹
Package Manager :key::key: build: ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ์„ค์ •ํ•  ๊ฒฝ์šฐ
Test Code :hourglass::hourglass: test: ๋ˆ„๋ฝ๋œ ํ…Œ์ŠคํŠธ ์ถ”๊ฐ€ ๋˜๋Š” ๊ธฐ์กด ํ…Œ์ŠคํŠธ ์ˆ˜์ •
Revert :leftwards_arrow_with_hook::leftwards_arrow_with_hook: revert: ์ž‘์—… ๋˜๋Œ๋ฆฌ๊ธฐ

๐Ÿ‘‰ Branch convention

upstream

์ข…๋ฅ˜ ์‚ฌ์šฉํŒจํ„ด ํŠน์ง•
main main ํ”„๋กœ๋•์…˜ ์Šค๋ƒ…์ƒท๊ฐ€์žฅ ์ตœ์‹ ์˜ ๋ฐฐํฌ๋œ ๋ฒ„์ „
dev-front dev-front ํ”„๋ก ํŠธ์—”๋“œ ๋ฆด๋ฆฌ์ฆˆ ๊ณ„ํš์— ๋”ฐ๋ผ์„œ Github์—์„œ ๊ธฐ๋ณธ ๋ธŒ๋žœ์น˜๋กœ ์ง€์ •
dev-back dev-back ๋ฐฑ์—”๋“œ ๋ฆด๋ฆฌ์ฆˆ ๊ณ„ํš์— ๋”ฐ๋ผ์„œ Github์—์„œ ๊ธฐ๋ณธ ๋ธŒ๋žœ์น˜๋กœ ์ง€์ •

origin (๊ฐœ์ธ ํฌํฌ ๋ ˆํฌ์ง€ํ† ๋ฆฌ)

์ข…๋ฅ˜ ์‚ฌ์šฉํŒจํ„ด ํŠน์ง•
feat feat/์ด์Šˆ๋ฒˆํ˜ธ-ํ…Œ์Šคํฌ์นด๋“œ์ œ๋ชฉfeat/1-Login_์ปดํฌ๋„ŒํŠธ dev์— ๋ณ‘ํ•ฉ๋„์–ด์“ฐ๊ธฐ๋Š” ์–ธ๋”๋ฐ”_๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
fix fix/์ด์Šˆ๋ฒˆํ˜ธfix/#911 ๋ฉ”์ธ์— ๋ณ‘ํ•ฉ

Lint convention

  • semistandard ๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.
  • Prettier๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ฃผ์š” ๊ทœ์น™

  • space๋Š” ๋‘ ์นธ, ํƒญ ์‚ฌ์šฉ x
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋Š” single quote์™€ ํ…œํ”Œ๋ฆฟ ๋ฆฌํ„ฐ๋Ÿด์„ ์‚ฌ์šฉํ•˜๊ณ , ๋ Œ๋”๋ง ๋ถ€๋ถ„ HTML ์ฝ”๋“œ๋Š” double quote๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
  • line-wrapping์€ 80์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•˜๋Š” ๊ฒƒ์„ ์›์น™์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค.
  • var ๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ํ‚ค์›Œ๋“œ ๋‹ค์Œ์—” ์ŠคํŽ˜์ด์Šค ํ•˜๋‚˜๋ฅผ ๋„์›Œ์ฃผ์„ธ์š”.
  • ๋” ๋งŽ์€ ์ •๋ณด๋Š” https://standardjs.com/rules.html ๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.
    • ์œ„ ๋งํฌ์˜ ๋ฃฐ์—์„œ ์˜ค์ง ํ•œ ๊ฐ€์ง€๋งŒ ์˜ˆ์™ธ์ž…๋‹ˆ๋‹ค. ์„ธ๋ฏธ ์ฝœ๋ก  ์‚ฌ์šฉ์„ ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.

PR type

  • ์ฝ”๋“œ ์ปจ๋ฒค์…˜์„ ์ž˜ ์ง€์ผœ์ฃผ์„ธ์š”. ์ปจ๋ฒค์…˜ ์˜ค๋ฅ˜๋กœ ์ธํ•œ ๋ถˆํ•„์š”ํ•œ ์ฝ”๋ฉ˜ํŠธ๋Š” ์‹œ๊ฐ„ ๋‚ญ๋น„์ด๊ธฐ ๋•Œ๋ฌธ์— ์ง€์–‘ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

  • ๋ฆฌ๋ทฐ ๊ฐ€์ด๋“œ๋ผ์ธ์„ ์ž˜ ์ž‘์„ฑํ•ด ์ฃผ์„ธ์š”. ๋ชจ๋“  ์ฝ”๋“œ ๋ณ€๊ฒฝ์‚ฌํ•ญ์—๋Š” ์˜๋„๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์˜๋„์น˜ ์•Š๊ฒŒ ๋ณ€๊ฒฝ๋œ ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด ๋˜๋Œ๋ ค ๋†“์•„์•ผ ํ•˜๊ณ , ์ค„๋ฐ”๊ฟˆ๊ณผ ๊ฐ™์ด ์•„์ฃผ ๋‹จ์ˆœํ•œ ๋ณ€๊ฒฝ์‚ฌํ•ญ์ด๋ผ๋„ ๊ทธ ๋ถ€๋ถ„์„ ๋ฆฌ๋ทฐ์–ด๊ฐ€ ๋ณผ ํ•„์š”๊ฐ€ ์—†๋‹ค๋ฉด โ€œJust line changeโ€ ์™€ ๊ฐ™์€ ์ฝ”๋ฉ˜ํŠธ๋ฅผ ๋‹ฌ์•„ ๋ช…์‹œํ•˜์—ฌ ๋ฆฌ๋ทฐ ์‹œ๊ฐ„์„ ์ค„์—ฌ์ค„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋˜๋Š” ์‚ฌ์šฉ๋œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์—…๋ฐ์ดํŠธ๊ฐ€ ํฌํ•จ๋˜์—ˆ๋‹ค๋ฉด ํ•ด๋‹น ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ ๋งํฌ๋‚˜ ์Šคํฌ๋ฆฐ์ƒท์„ ์ฒจ๋ถ€ํ•˜๋Š” ๊ฒƒ๋„ ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

  • ์ž‘์—…์ค‘, ๋ฆฌ๋ทฐ ๊ฐ€๋Šฅ ์—ฌ๋ถ€๋ฅผ ์ž˜ ๋ช…์‹œํ•ด ์ฃผ์„ธ์š”. ์•„์ง ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ ์ค‘์ผ ๋•Œ์—๋Š” [WiP] (Work in Progress) ๋ฅผ ํƒ€์ดํ‹€ ์•ž์— ์ถ”๊ฐ€ํ•˜๊ณ , ๋งŒ์•ฝ ์ž‘์—…์ด ๋๋‚ฌ์œผ๋ฉด ์ด๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  review-needed ํƒœ๊ทธ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•œ ๋ฒˆ ์ž‘์—…์„ ๋งˆ์ณค๋‹ค๊ณ  ๋๋‚œ ๊ฒƒ์ด ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ˜์˜ํ•˜๋Š” ์ค‘์—๋„ ์ด ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•˜์—ฌ ๋ช…์‹œํ•ด ์ฃผ์„ธ์š”.

  • PR ์ œ๋ชฉ

Feat/์ด์Šˆ๋ฒˆํ˜ธ ์นด๋“œ์ œ๋ชฉ
  • PR ๋ณธ๋ฌธ
### PR ํƒ€์ž…
- [] ๊ธฐ๋Šฅ ์ถ”๊ฐ€
- [] ๊ธฐ๋Šฅ ์‚ญ์ œ
- [] ๋ฒ„๊ทธ ์ˆ˜์ •
- [] ์˜์กด์„ฑ, ํ™˜๊ฒฝ ๋ณ€์ˆ˜, ๋นŒ๋“œ ๊ด€๋ จ ์ฝ”๋“œ ์—…๋ฐ์ดํŠธ

### ๋ฐ˜์˜ ๋ธŒ๋žœ์น˜
feat/login -> dev-front
feat/login -> dev-back

### ๋ณ€๊ฒฝ ์‚ฌํ•ญ
๋กœ๊ทธ์ธ ์‹œ, ๊ตฌ๊ธ€ ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

How to issue

  • Issue ์ œ๋ชฉ
[title] / body
  • Issue ๋ณธ๋ฌธ
### Issue ํƒ€์ž…
-[] ๊ธฐ๋Šฅ ์ถ”๊ฐ€
-[] ๊ธฐ๋Šฅ ์‚ญ์ œ
-[] ๋ฒ„๊ทธ ์ˆ˜์ •
-[] ์˜์กด์„ฑ, ํ™˜๊ฒฝ ๋ณ€์ˆ˜, ๋นŒ๋“œ ๊ด€๋ จ ์ฝ”๋“œ ์—…๋ฐ์ดํŠธ

### ์ƒ์„ธ ๋‚ด์šฉ
- [ ] Github ์†Œ์…œ ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ
- [ ] ๋ธ”๋ผ๋ธ”๋ผ

### Lables
- ๋ฉ”์ธ ์ปค๋ฐ‹
- ์ž‘์—… ๋ถ„์•ผ(front or back)
- ์˜ˆ์ƒ์‹œ๊ฐ„

  • ์š”์ฒญ Issue ์ œ๋ชฉ
๐Ÿ“ฃ[์š”์ฒญ] ๋กœ๊ทธ์ธ ์ฟ ํ‚ค ๋ฌธ์ œ
  • ์š”์ฒญ Issue ๋ณธ๋ฌธ
### ์ƒ์„ธ ๋‚ด์šฉ
๋กœ๊ทธ์ธ ์ฟ ํ‚ค๊ฐ€ ๋ฐ›์•„ ์™€์ง€์งˆ ์•Š์Šต๋‹ˆ๋‹ค.

[img]์‚ฌ์ง„ ์ฒจ๋ถ€(Optional)

### Lables
- request
- ์šฐ์„ ์ˆœ์œ„

Name convention

๋ณ€์ˆ˜ ์ด๋ฆ„ - Camel-case

ex) clientLogin

ํŒŒ์ผ & ์ƒ์„ฑ์ž ์ด๋ฆ„ - Pascal-case

ex) ClientSide

์ƒ์ˆ˜ ์ด๋ฆ„ Snake-case

ex) SNAKE_CASE

Stack version

Stack Version
node 16.13.1 LTS
npm 8.3
express 4.17.1
mysql2 2.3.3
sequelize 6.12.0-beta.3
sequelize-auto 0.8.8
cookie-parser 1.4.4
cors 2.8.5
dotenv 10.0.0
jsonwebtoken 8.5.1
sequelize-cli 6.3.0