Skip to content

team rules

jaeha edited this page Dec 15, 2021 · 3 revisions

팀 규칙

  1. 9 to 6를 정규작업 시간으로 정합니다. 휴식시간은 식사시간을 포함한 2시간 입니다.
  2. 레포 merge는 오전9시, 오후6시 반드시 모든 팀원이 함께 진행합니다.
  3. 새벽 등 다른 팀원들과 소통이 안되는 시간대에는 자신의 작업의 영향이 자신의 PC밖을 넘어서선 안됩니다.
  4. 함께 해결해야하는 문제, 모두가 알아야하는 사실이 있다면 최대한 빠르게 팀회의를 요청합니다. 정말 중요한일, 급한일이라면 코딩보다 회의가 높은 우선순위를 가집니다.
  5. 작은 수정사항(위키의 내용 수정, 오타수정, wireframe이미지 최신화 등)은 선조치 후 바로 모두에게 알립니다.
  6. 자신의 부족한 점을 인정합니다. 다른 팀원이 잘 알지 못할 수 있습니다. 나라고 예외는 아닙니다.
  7. 상대방의 노력을 아낌없이 칭찬합니다. 노력을 인정받을 때 큰 성취감을 느낍니다. 아무도 생각하지 못했던 점을 누군가는 밤새 고민하고 발전시키기위해 노력했을지도 모릅니다.
  8. 말이 겹친다면 상대방에 먼저 말을 끝낼 수 있게 기다려봅니다. 온라인 커뮤니케이션 특성상 대화 배려가 빛을 발합니다!
  9. 어려운것 이해가 안되는 것이 있다면 혼자 충분히 고민후 최대한 물어봅니다. 현업을 가게된다면 이 행동에 조금더 주의를 기울여야하겠지만, 지금은 질문하고 서로 배우는 시간에 투자해보겠습니다.
  10. 똑같은 문제에 다시 직면했는데 또 모르겠더라도 반드시 다시 질문합니다. 이 과정속에서 질문자는 내가 왜 똑같은 문제를 또 이해를 못하는지에 대해 반드시 고민해봐야합니다. 질문을 받은 팀원은 질문자가 왜 똑같은 문제를 또 질문하게 됐을지에대해 반드시 고민해봐야합니다. 똑같은 질문을 했다고 절대 눈치를 주는 등의 행동을 하면 안됩니다.
  11. 절대 포기하지 않습니다.

커밋 메시지 규칙

커밋 메시지는 제목과 본문으로 나누어 집니다. 한 줄만 작성해도 설명이 충분하다면 제목만으로도 괜찮습니다. 하지만 어떤 변경 사항이 있는지 맥락과 설명이 필요하다면 본문을 작성할 수 있습니다. 다음은 제목과 본문을 작성하는 규칙입니다.

  1. 제목과 본문을 한 줄 띄워 분리해 주세요.
  2. 제목은 영문 기준 50자 이내로 적어주세요.
  3. 제목 첫글자를 대문자로 적어주세요.
  4. 제목 끝에 . 는 금지합니다.
  5. 제목은 명령문으로 작성합니다.
  6. 제목은 과거형은 사용하지 않습니다.
  7. 본문은 50자마다 줄을 바꿔주세요.
  8. 본문은 어떻게 변경했는지 보다 무엇을 변경했는지, 왜 변경했는지 에 맞추어 작성하세요.
  9. 본문은 한글 또는 영어로 작성합니다.
// 예시
Feat: Add get data api function
!BREAKING CHANGE: change API arguments(또는 API argument 수정)

Lint 규칙

  • semistandard 를 따릅니다.(주요 규칙과 상이하는 부분이 있다면 주요규칙의 우선 순위가 높습니다)

❗주요 규칙❗

  • space는 두 칸, 탭 사용 x
  • 오직 single quote만 사용.
  • 템플릿 리터럴은 표현식에 사용하거나 single qoute가 문자열 내부에서 중첩될때만 사용하세요.
// 예시 
`mike's`
  • var 는 사용하지 않습니다.
  • 키워드 다음엔 스페이스 하나를 띄워주세요.
// 예시
for (let i ....) {}
function func () {}
const arrowFunc = () => {}
If () {}
  • 화살표 함수 사용 시 인자가 하나여도 소괄호를 생략하지 않습니다.
  • 화살표 함수 사용 시 return만 있더라도 중괄호를 생략하지 않습니다.
  • 더 많은 정보는 https://standardjs.com/rules.html 를 참고하세요.

브랜치 이름 형식

종류 사용패턴 특징
main main 프로덕션 스냅샷, 가장 최신의 배포된 버전
dev dev 릴리즈 계획에 따라서 Github에서 기본 브랜치로 지정
feature feature/이슈번호-이름 -> feature/1-branch-name dev에 병합
hotfix hotfix/이슈번호 -> hotfix/#911 메인에 병합

PR 형식

  • 코드 컨벤션을 잘 지켜주세요. 컨벤션 오류로 인한 불필요한 코멘트는 시간 낭비이기 때문에 지양하는 것이 좋습니다.

  • 리뷰 가이드라인을 잘 작성해 주세요. 모든 코드 변경사항에는 의도가 필요합니다. 의도치 않게 변경된 부분이 있다면 되돌려 놓아야 하고, 줄바꿈과 같이 아주 단순한 변경사항이라도 그 부분을 리뷰어가 볼 필요가 없다면 “Just line change” 와 같은 코멘트를 달아 명시하여 리뷰 시간을 줄여줄 수 있을 것입니다. 또는 사용된 라이브러리 업데이트가 포함되었다면 해당 라이브러리의 릴리즈 노트 링크나 스크린샷을 첨부하는 것도 좋은 방법입니다.

  • 작업중, 리뷰 가능 여부를 잘 명시해 주세요. 아직 코드를 작성 중일 때에는 [WiP] (Work in Progress) 를 타이틀 앞에 추가하고, 만약 작업이 끝났으면 이를 제거하고 review-needed 태그를 설정할 수 있습니다. 한 번 작업을 마쳤다고 끝난 것이 아니기 때문에 리뷰를 반영하는 중에도 이 과정을 반복하여 명시해 주세요.

  • PR 제목

[Client] / #88 / edit: readme
  • PR 본문
  • 아래 형식을 복사해 Github Pull Request 의 템플릿으로 지정 후 해당 본문은 삭제하시면 됩니다.
### PR 타입(하나 이상의 PR 타입을 선택해주세요)
-[] 기능 추가
-[] 기능 삭제
-[] 버그 수정
-[] 의존성, 환경 변수, 빌드 관련 코드 업데이트

### 반영 브랜치
ex) feat/login -> dev

### 변경 사항
ex) 로그인 시, 구글 소셜 로그인 기능을 추가했습니다.

### 테스트 결과
ex) 베이스 브랜치에 포함되기 위한 코드는 모두 정상적으로 동작해야 합니다. 결과물에 대한 스크린샷, GIF, 혹은 라이브 데모가 가능하도록 샘플A

Issue 형식

  • Issue 제목
[title] / body
  • 아래 형식을 복사해 Github Issue 의 템플릿으로 지정 후 해당 본문은 삭제하시면 됩니다.
### Issue 타입(하나 이상의 Issue 타입을 선택해주세요)
-[] 기능 추가
-[] 기능 삭제
-[] 버그 수정
-[] 의존성, 환경 변수, 빌드 관련 코드 업데이트

### 상세 내용
ex) Github 소셜 로그인 기능이 필요합니다.

### 예상 소요 시간
-[] `0.5h`
-[] `1h`
-[] `1.5h`
-[] `2h`
-[] `2.5h`
-[] `3h`

### 라벨
- 예상 소요 시간: `E: 1h`
- 그룹: `client`, `server`
- 긴급도: `High`, `Middle`, `Low`

변수 이름 camelCase

  • variableName

파일 & 생성자 이름 PascalCase

  • ConstructorName

node & npm 버전 통일

Node v16.13.-

NPM v8.1.-

Clone this wiki locally