Skip to content

Team Rule

lasags edited this page May 11, 2022 · 33 revisions

⏰👮🏻‍♂️Team Rules

💡 Commit message : git add . ⇒ git add 파일명 , 커밋메세지 세분화

💡 Branch name : 슬래시 사용

💡 Code convention : prettier 사용

💡 Task allocation : 알아서 잘 딱 센스있게

project schedule(dev)

시간 일정 내용 세부
09:00 standup 전 날 추가 작업한 부분, 그 날 할 일 공유
09:30 develop
12:00 lunch
13:30 meeting 오전 이슈, 팔로업
14:00 develop
17:30 devlog 각자 issue card 작성
18:00 code review devlog 기반 공유
18:30 dinner
20:00 develop

💡 Issue Sharing Guide

  • 틀릴 권리를 존중하고 자유롭게 팀원들과 의견, 생각 나누기
  • 질문이 있거나 도움이 필요한 경우 망설이지는 않지만 생각을 충분히 한 후 질문하기
  • 답변은 최선을 다하여 해주기

🤝 Git

❗️ Git Rule

  • feature 브랜치(branch)에서 작업
  • develop에서 브랜치 생성
  • develop과 master에 직접 푸시 X / 풀 리퀘스트 O
  • Pull Request 생성 전 리베이스하는 동안 잠재적인 충돌 제거
  • 병합 후, 로컬과 원격에 있는 feature 브랜치 삭제
  • feature 브랜치의 빌드 검사 / 코드 스타일 체크 등 모든 테스트 통과 검증 후 Pull Request
  • .gitignore 사용
  • develop과 master 브랜치 보호

☑️ Commit

💡 Commit Message Rule

  • 동명사X 관사X 명사O
  • 부정문 Don't 사용
  • 줄 바꿈을 통해서 제목과 본문을 구분
  • 제목에 대문자를 사용
  • 제목을 마침표 사용 X
  • 제목에 명령법(imperative mood) 사용
  • 오타 수정 = Fix typo

⌨️ Type Commit

Type Description Note
FIX 올바르지 않은 동작을 수정
ADD 코드나 테스트, 예제, 문서 등의 추가
REMOVE 코드의 삭제
USE 특별히 무언가를 사용해 구현
REFACTOR 전면 수정
SIMPLIFY 복잡한 코드를 단순화
UPDATE 개정이나 버전 업데이트 Fix와는 달리 Update는 잘못된 것을 바로잡는 것이 아님
IMPROVE 호환성, 테스트 커버리지, 성능, 검증 기능, 접근성 등 향상
MAKE 기존 동작의 변경
IMPLEMENT 코드가 추가된 정도보다 더 주목할 만한 구현체를 완성 Add에 비해 더 큰 단위의 코드 추가에 사용
REVISE 문서의 개정
CORRECT 문법의 오류나 타입의 변경, 이름 변경
ENSURE 무엇이 확실하게 보장받는다는 것을 명시
PREVENT 특정한 처리를 못하게 방지
AVOID 특정한 처리를 못하게 회피 ‘Prevent’는 못하게 막지만, ‘Avoid’는 회피
MOVE 코드의 이동
RENAME 이름 변경
ALLOW 허용 표현
VERIFY 검증 코드
SET 변수 값을 변경하는 등의 작은 수정
PASS 파라메터를 넘기는 처리

📄 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하여 최신화된 정보 동기화

🌳 Branch - 브랜치 이름이나 각 브랜치 별 규모

dev / feature-login-component dev / landing-page / feature-login-component

Module versions

  • Node v16.13.1
  • NPM 8.1.2

💻 Code Style

Prettier

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

📂 File Structure

Bad

.
├── controllers
|   ├── product.js
|   └── user.js
├── models
|   ├── product.js
|   └── user.js

Good

.
├── product
|   ├── index.js
|   ├── product.js
|   └── product.test.js
├── user
|   ├── index.js
|   ├── user.js
|   └── user.test.js
Clone this wiki locally