-
Notifications
You must be signed in to change notification settings - Fork 4
Git 사용법
WonJoong edited this page Oct 26, 2021
·
1 revision
- 특정 작업에 대한 이슈를 생성한다.
- Feature branch를 생성한다.
- Add - Commit - Push - Pull Request - Merge의 과정을 거친다.
- Merge 중 어려운 점이 있으면 같이 해결하거나 슬랙으로 의논한다.
- 종료된 Issue와 Pull request의 Label과 Project를 관리한다.
협업 시 준수해야 할 규칙은 다음과 같다.
- develop에서의 작업은 원칙적으로 금지한다.
- 자신이 담당한 부분 이외에 다른 팀원이 담당한 부분을 수정할 때는 Slack을 통해 변경 사항을 전달한다.
- 본인의 Pull Request는 본인이 Merge한다.
- Commit, Push, Merge, Pull Request 등 모든 작업은 앱이 정상적으로 실행되는 지 확인 후 수행한다.
Branch의 Naming Rule은 1.2.1을 따른다. Branch는 가능한 한 작업단위, 기능단위로 생성하며 이는 Issue를 기반으로 한다. 단, 같은 범위의 기능이라면 같은 브랜치를 사용한다. 예를 들면, 회원가입 기능 구현 시 아이디 중복 체크, 비밀번호 확인, 아이디 유효성 확인 등은 회원가입 하나로 구분한다.
-
main
: 개발이 완료된 산출물이 저장될 공간 -
develop
: feature 브랜치에서 구현된 기능들이 merge될 브랜치 -
feature
: 기능을 개발하는 브랜치, 이슈별/작업별로 브랜치를 생성하여 기능을 개발한다 -
fix
: 버그를 수정하는 브랜치
feature/이슈번호-기능설명
, fix/이슈번호-기능설명
Branch를 생성하기 전 Issue를 먼저 작성한다. Issue 작성 후 생성되는 번호와 Issue의 간략한 설명 등을 조합하여 Branch의 이름을 결정한다. <Prefix>/<Issue_Number>-<Description>
의 양식을 따른다.
작업 시작 전 Issue 생성이 선행되어야 한다. Issue는 작업 단위, 기능 단위로 생성하며 생성 후 표시되는 Issue Number를 참조하여 Branch Name과 Commit Message를 작성한다.
이슈 생성 시 Github 오른편의 Assignee, Label, Project, Linked Pull Requests 를 적용한다. Assignee는 해당 이슈의 담당자, Label에는 담당자
를 추가한다. 이슈 관련 작업이 끝나면 Issue를 Close한다.
이슈는 아래 양식으로 탑재한다.
## Overview (Required)
-
[<Prefix>] <Issue_Number> - <Description>
- FIX : 버그, 오류 해결
- FEAT : 새로운 기능 구현
- DOCS : README나 WIKI 등의 문서 개정
- REFACTOR : 내부 로직은 변경 하지 않고 기존의 코드를 개선하는 리팩토링 시
- CHORE : 그 이외의 잡일/ 버전 코드 수정, 패키지 구조 변경, 파일 이동, 가독성이나 변수명, reformat 등
- UI : 레이아웃 코드만 추가되거나 수정되었을 시
- TEST : 테스트 코드 추가
- [FEAT] #7 - Room DB 기반 작업 추가
- [DOCS] #24 - 리드미 파일에 개발자 추가
Pull Request는 아래 양식으로 요청을 보낸다.
## Issue
- close #ISSUE_NUMBER
## Overview (Required)
- [ ]
## Links
-
## Screenshot
Before | After
:--: | :--:
<img src="" width="300" /> | <img src="" width="300" />
- 코드리뷰는 데일리 스크럼 이후 30분간 진행한다.
- Pull Request를 올리면 즉석으로 코드리뷰를 작성해도 된다.
- 라벨은 이슈에 대한
담당자
로 구성한다. -
Challenge
: 추후 도전해볼만한 이슈에 대해 다루는 태그.
- 주차별로 Project를 나눈다.
- Project명은 Week1, Week2와 같은 형식으로 작성한다.
- 수정할 사항이 있으면 슬랙에서 의논 후 수정한다.