커밋 & Pull Request 전 확인해야할 사항 - connect-foundation/2019-07 GitHub Wiki
Git 사용 방법이 헷갈릴 때 참고하세요!
- origin repository를 fork해 local repository로 가져온다.
- local repository를 각자의 PC로 clone 한다.
git clone 'https://github.com/{my_git_id}/2019-07.git' --single-branch -b develop
- remote repository(connect's)와 local repository를 연동한다.
git remote add connect_repo 'https://github.com/connect-foundation/2019-07.git'
- develop branch가 최신인지 확인한다.
# 방법 1
git checkout develop
git pull connect_repo develop
# 방법 2
git fetch connect_repo # 만약 새로 받아지는 파일이 있다면 아래 명령어를 실행한다.
git checkout develop
git merge connect_repo/develop # 만약 여기서 충돌이 발생한다면, 충돌을 본인이 해결해야 한다.
- develop branch에서 기능을 개발할 feature branch를 생성한다.
git checkout develop
git checkout -b feature/{something} # branch가 없으면 생성하고 checkout 하는 옵션
- feature branch에서 새로운 기능 개발을 시작한다.
주의사항: feature branch는 commit 작업만 하고, push는 하지 않는다.
- feature branch의 작업이 끝나면, merge 전 remote 저장소에 변경사항이 없는지 확인한 뒤 local의 develop branch로 merge한다.
merge에 대한 commit log를 남기기 위해, --no-ff 옵션을 준다.
git checkout develop
git merge --no-ff feature/something
git push origin develop
- 작업한 feature branch를 삭제한다.
git branch -d feature/something
- local에서 작업한 내용을 remote repository로 Pull Request를 날린다.
pull request를 보내기 전에, 원격 저장소에서 변경된 사항은 없는지 한번 더 확인한다.
- 1명 이상의 코드 리뷰를 받고, 그 주의 팀장에게 merge를 요청한다.
Pull Request를 위한 템플릿은 없지만,
원활한 코드리뷰와 프로젝트 진행을 위해 PR에 아래 사항을 꼭 포함해주세요!
- PR 제목은 구현된 기능 사항에 대해 요약하여 적는다.
- 연관 Project
- PR에 포함된 기능이 무엇인지
- PR과 관련된 Issue는 무엇인지 (Hash 태그+Issue 번호를 달면 됨)
나중에 Issue만 보고 연관된 커밋들을 쉽게 보기 위함이니 팀장이 Merge시 확인할 것
- PR에 특이사항은 없는지
- Clean Code, Code Convention을 지키려했으나 그러지 못한 부분
- Pair Programming
- 기타 특이사항이라고 생각하는 부분
PR에 관련 Issue를 달면 이렇게 Issue에서 확인이 가능합니다 👍
PR 예시