PR 을 위한 모든 과정

Heath_Jeong·2021년 5월 7일
0

Issue 작성

브랜치를 만들기 전에 깃헙에서 issue 를 작성할 것
1. Assignee, Labels, Projects 설정
2. 어떤 일을 수행할지 체크박스로 적기 (이후에 더 필요한 체크박스는 수정해도 됨)


Branch 생성 및 변경

  1. 로컬에서 branch 를 변경하는 명령어는 git checkout 인데, -b 옵션을 통해 생성과 동시에 변경 가능
    git checkout -b heath/k-fold
  2. 현재 브랜치 확인
    git branch

Git Add, Git Commit, Git Push

브랜치에서 작업한 내용을 remote 에 올리기

  1. git add
  • 현재 디렉토리 이하 모든 변경내용 올리고 싶을 때
    git add .
  • 원하는 파일만 올리고 싶을 때
    git add train.py
  1. git commit -m
    git commit -m "Add k-fold function"

참고 좋은 git commit 메시지를 위한 영어 사전 - Reid

  1. git push, 우리가 설정한 origin : upstream(remote) 에 어느 브랜치의 커밋을 올릴지 결정
    git push origin heath/k-fold

PR 날리기

  1. remote (깃허브 웹에 접속) 에서 branch 를 들어가서 New Pull Request

  2. develop <- feature 가 되도록 PR 날리기 (*매우 중요)

  • 네이밍은 반드시 [이름] 작업 기능 과 같은 형식으로 올릴것 (e.g. [히스] Add K-fold)
  • 내용도 적어줄 것
  • PR 날렸다고 슬랙에 공지할 것 (슬랙 알림이 안돼서 서로 말해주는게 중요합니다!)

Code Review

  1. file changed 에 들어가서 코드를 읽어본 후, 문제가 있으면 comment 를 남기고 괜찮다면 approve 해주기
    (아직은 안됐지만, 다른 모든 사람들이 approve 를 해야 merge 가능하게 만들 예정입니다.)
  • 마찬가지로 알림이 안뜨니까, 웬만하면 슬랙에 approve 했는지 문제가 있는지 등을 말해줍시다!

Merge 및 Branch 삭제

  1. 모든 사람으로부터 approve 가 됐다면 PR 당사자가 merge 하기
  • 반드시 슬랙에 merge 했다고 알려주기
  1. local 환경에서 해당 브랜치 삭제
    git branch -D heath/k-fold

Git Fetch, Merge (upstream 의 내용을 로컬로 업데이트)

remote 의 내용이 바뀌었기 때문에 conflict 나지 않게 다른 모든 사람들은 본인의 로컬 브랜치에 remote 내용을 내려받아야 함
1. git fetch upstream
2. git merge upstream/develop heath/EDA (작업중인 현재 브랜치 기준 merge 가 됨)


profile
데이터로 문제를 해결하는 엔지니어를 꿈꿉니다.

0개의 댓글