Skip to content

Team Rule

Jihun Yoo edited this page Jun 20, 2022 · 1 revision

✅ General

Communication Guide

  • 서로 의견 교환할 때 핵심 내용만 전달하기
  • 명령조('-하세요','-해요') 와 같은 명령조 말 지양하고, '혹시', '괜찮을까요?', '어떨까요?' 와 같은 쿠션어 사용하여 상대방 배려하기
  • 한 명이 의견 제시했을 때 모든 사람의 의견을 종합하여 결정하기
  • 의견이 반반으로 갈릴 경우 중요도, 태스크 카드 일정을 고려하여 우선순위 정하기 ( 너무 시간이 오래 걸릴경우 팀장이 의견 종합하여 결정하기 )
  • 서로 감정이 상하거나 서운한 사항 있으면 담아두지 말고 바로바로 이야기 하기

Issue Sharing Guide

  • 맡은 task에 대해 1시간 동안 고민, 구글링 해도 안되면 같은 Position 팀원에게 공유하기
  • 1시간 동안 같은 Position 팀원과 공유해서 안되면 팀원 전체에게 공유해 문제 해결하기

Daily schedule

시간 일정 내용 세부
09:00 standup 전 날 추가 작업한 부분, 그 날 할 일 공유
09:30 develop
12:00 lunch
13:00 meeting 오전 이슈, 팔로업(선택 사항)
13:30 develop
17:00 devlog PR 검토 후 merge, 각자 issue card 작성
17:00 code review devlog 기반 공유
18:00 dinner
19:00 develop

✅ Git

Git Rule

  • .gitignore에 node_modules, .env, package-lock.json 기재하기
  • feature에서 분기되는 브랜치의 경우 feature/<기능|컴포넌트> 형식으로 작성하기
  • dev브랜치에서 feature브랜치 생성 후 feature 브랜치에서 작업하기
  • Pull Request만으로 dev 브랜치에 merge 하기 (dev와 master 브랜치에 직접 푸시하지 않기)
  • merge 후, 로컬과 원격에 있는 feature 브랜치 삭제하기
  • 개인 작업할 경우 다음날 09:00 전까지 dev 브랜치로 PR 보내기

Git Workflow

Leader

  1. 초기 레포지토리를 받아 local에 클론하기
  2. master 브랜치에서 초기 세팅하기
  3. 그대로 dev 브랜치 생성하기
  4. 초기 레포지토리의 dev에 푸시 후 master 브랜치에 merge하기

Member

  1. fork 후 로컬에 clone하기
  2. dev 브랜치를 기반으로 feature 브랜치 생성하기
  3. feature 브랜치에서 완성되면 해당 브랜치로 푸시하기
  4. P/R을 upstream dev 브랜치로 요청하기
  5. (업데이트가 있을 때) upstream으로부터 pull하여 최신화된 정보 동기화하기

Commit

올바른 커밋 메세지 작성 예

[ADD] login auth 

Commit Message Rule

  • <작업 영역> [Commit Type] <작업 내용> 순서로 작성하기
  • 첫 글자와 커밋 타입은 대문자 사용하기
  • <작업 영역>에는 Server 인지 Client 인지 적기
  • Commit Type 제외한 나머지 부분은 명사 사용하기(동명사, 관사 사용하지 말기)
  • 줄 바꿈을 통해서 제목과 본문을 구분하기

Commit Type

Type Description
FIX 올바르지 않은 동작을 수정
ADD 코드나 테스트, 예제, 문서 등의 추가
REMOVE 코드의 삭제
USE 특별히 무언가를 사용해 구현
REFACTOR 코드 리팩터링
IMPROVE 호환성, 테스트 커버리지, 성능, 검증 기능, 접근성 등 향상
REVISE 문서의 개정
RENAME 폴더, 파일, 함수, 변수 이름 변경

✅ Stack Version

  • npm (8.1.0)
  • node (16.13.0)
  • Front-end
    • React (18.0.0)
    • react-router-dom (6.3.0)
    • styled-components (5.3.5)
    • axios (0.26.1)
  • Back-end
    • bcrypt (5.0.1)
    • cookie-parser (1.4.6)
    • cors (2.8.5)
    • dotenv (16.0.0)
    • express (4.17.3)
    • helmet (5.0.2)
    • jsonwebtoken (8.5.1)
    • morgan (1.10.0)
    • multer (1.4.4)
    • mysql2 (2.3.3)
    • sequelize (6.18.0)
    • sequelize-cli (6.4.1)
    • nodemon (2.0.15)

✅ Code Style

Prettier format

{
  "tabWidth": 2,
  "endOfLine": "lf",
  "arrowParens": "avoid",
  "singleQuote": true,
  "semi": true,
  "trailingComma": "all",
  "printWidth": 80
}