Skip to content

Project Team Rule

cptkuk91 edited this page May 21, 2022 · 2 revisions

Basic Rule

  • 팀원이 질문할 때에는 친절하고 적극적인 태도로 답변합니다.
  • 팀원의 실패와 실수는 또 다른 도전의 기회고, 도전이 없다면 성공이 없습니다. 팀원의 도전과 성공을 항상 응원합니다.
  • 하고 있는 일이 계획대로 흘러가지 않는다고 포기하지 않습니다.
  • 힘든 순간 포기하지 말고 지금까지 배웠던 내용을 돌아보며, 계획한 기능에 대한 완성도를 높입니다.

갈등 해결 방안

  • 존중과 배려를 기본으로 하며, 다른 팀원들의 말을 경청하고 원활한 의사소통을 항상 노력합니다.
    회의 진행 시 솔직한 의견을 전달하고 소통합니다. 팀원 간 이견 발생 시 의사결정은 다수결로 진행합니다.

Time Rule

시간 일정
09:00 Stand-Up 미팅
10:00 Dev
12:00 점심 시간
13:00 Dev
18:00 저녁 시간
21:00 코드 리뷰
21:30 Dev
  • 최대 작업 상한선은 03:00 준수합니다.

  • 휴식 규칙

    • 50분 코딩, 10분 휴식
    • 점심 시간: 12:00 - 13:00
    • 저녁 시간: 18:00 - 21:00
    • 주말(토, 일) 13:00 - 21:00

Version Rule

  • Node (v16.14.2)
  • NPM (8.5.0)
  • React (18.0.0)
  • react-router-dom (6.3.0)
  • sass (7.0.1)
  • dotenv (16.0.0)
  • prettier (2.6.2)
  • eslint (8.13.0)
  • redux (4.2.0)
  • Nodemailer (6.7.3)
    기타 추가 예정입니다.

Commit Message Rule

  • 오전 Stand-Up 미팅에 작성한 Branch를 반드시 사용합니다.
  • 전면 수정, 버전 변경, 폴더 이동, 파일 이름 변경은 반드시 팀원과 협의합니다.
  • Commit 메시지는 아래 규칙을 따르며, 별로의 내용은 점심 시간, 저녁 시간 이후 팀원과 공유합니다.
Type Description Alert
수정 [Client/Server] 수정: 설명 -----
추가 [Client/Server] 추가: 설명 -----
삭제 [Client/Server] 삭제: 설명 -----
단순화 [Client/Server] 단순화: 설명 -----
전면 수정 [Client/Server] 전면 수정: 설명 반드시 팀원과 상의
버전 변경 [Client/Server] 버전 변경: 설명 반드시 팀원과 상의
이동 [Client/Server] 이동: 설명 반드시 팀원과 상의
이름 변경 [Client/Server] 이름 변경: 설명 반드시 팀원과 상의

Lint Rule

  • var는 사용하지 않습니다.

  • 변수명은 camelCase를 사용합니다. ex) adminLogin

  • 파일명은 PascalCase를 사용합니다. ex) AdminLogout

  • ESLint

module.exports = {
  parser: '@typescript-eslint/parser',
  plugins: ['@typescript-eslint', 'prettier'],
  extends: [
    'airbnb', // or airbnb-base
    'plugin:react/recommended',
    'plugin:jsx-a11y/recommended',
    'plugin:import/errors', 
    'plugin:import/warnings', 
    'plugin:@typescript-eslint/recommended',
    'plugin:prettier/recommended',
  ],
  rules: {
    'linebreak-style': 0,
    'import/prefer-default-export': 0,
    'import/extensions': 0,
    'no-use-before-define': 0,
    'import/no-unresolved': 0,
    'react/react-in-jsx-scope': 0,
    'import/no-extraneous-dependencies': 0,
    'no-shadow': 0,
    'react/prop-types': 0,
    'react/jsx-filename-extension': [
      2,
      { extensions: ['.js', '.jsx', '.ts', '.tsx'] },
    ],
    'jsx-a11y/no-noninteractive-element-interactions': 0,
    '@typescript-eslint/explicit-module-boundary-types': 0,
  },
  settings: {
    'import/resolver': {
      node: {
        extensions: ['.js', '.jsx', '.ts', '.tsx'],
      },
    },
  },
};
  • Prettier
{
    "singleQuote": true, 
    "semi": true,
    "useTabs": false,
    "tabWidth": 2,
    "trailingComma": "all",
    "printWidth": 80,
    "arrowParens": "always",
    "orderedImports": true,
    "bracketSpacing": true,
    "jsxBracketSameLine": false
  }

Branch Name Rule

Type Description Alert
main main 가장 최신의 배포된 버전입니다.
dev dev Release 계획에 따라 기본 브랜치로 지정합니다.
feature feature/이슈번호-이름 dev 병합 전 사용합니다.
hotfix hotfix/이슈번호 메인 병합에 사용, merge 전 반드시 팀원과 협의합니다.

Pull Request Rule

  • 불필요한 PR 금지합니다. Compulsory PR Time: 21:00

  • 줄 바꿈과 같은 사소한 변경 사항도 반드시 리뷰를 체크하고, comment를 작성합니다.

  • 작업 중, PR 필요한 경우 팀원에게 리뷰 요청을 부탁합니다.

  • PR 작성 예시

[Client] / feature/1-branch-name to hotfix / 수정: 55번 줄 부터 57번 줄
[Server] / feature/2-branch-name to hotfix / 수정: 로그인 함수 수정

Clone this wiki locally