본문 바로가기

Git

[Git] Pull Request

새로운 브랜치에서 작업을 한 후, 상위 브랜치에 merge를 요청하는 과정을 의미합니다. 

보통 협업 업무에서나, 오픈 소스 컨트리뷰션을 할때 활용합니다. 

 

누구나 브랜치에 접근해서 Merge 해버리면 예기치 못한 오류가 발생할 수도 있고 관리가 어렵습니다. 

제가 첫 회사에서 근무할 때는 수정사항이 있으면 아무나 master 브랜치에 접근해서 본인들의 코드를 합쳐버렸습니다. 

그래서 분명 잘 돌아가던게 이상한 오류가 생기기도 하고 복구를 하려 해도 꼬여버리는 경우가 종종 있었습니다.. 

쨋든..! pull request 과정을 보도록 하겠습니다.

 

1. 새로운 branch 생성

// develop branch 생성
git checkout -b develop

 

2. commit & push

// staging
git add .
// commit
git commit -m "pull request test"
// push
git push origin develop

 

3. Pull Request 생성

 

아래 빨간 동그라미 버튼을 눌러서 pull request를 생성합니다.

 

아래처럼 base를 어디로 할지 정할 수 있습니다. 여기서는 master로 ㄱㄱ!

 

그러면, 아래와 같이 pull request 목록이 보이고 Merge 할건지 확인할 수 있습니다. 

그리고 conflict가 발생했는지 여부도 확인할 수 있는데 여기서는 없다고 나요죠?

그리고 빨간 박스를 클릭하면 어떤 부분이 바뀌었는지 확인할 수 있습니다.

 

4. 코드 리뷰 & Merge

 

커밋 내용을 확인해보면 아래처럼 나타나고, 커멘트를 달아줄 수 있습니다.

잘못된 부분이 있다면 이렇게 커멘트를 남겨서 다시 pull request 날릴수 있도록 할 수 있겠죠??

 

5. Merge된 브랜치 pull & 현재 branch 삭제

여기서는 master 브랜치를 pull 하여 최신화 시켜주고 현재 branch를 삭제해주면 됩니다. 

현재 branch를 삭제해도 되고 안해도 되지만,

코드관리 사례들이나 Git Flow와 같은 Git 브랜치 전략들을 보면, 

작은 기능별로 새로 브랜치 생성하여 pull request 후 삭제하는 과정을 반복합니다.

그래야 브랜치의 성격이 명확해지기도 하고 헷갈리지 않습니다.

그리고 코드를 최신화 시켜줌으로써 충돌의 위험도 줄일 수 있습니다.

'Git' 카테고리의 다른 글

Git 명령어 모음  (0) 2020.06.16
Github readme.md에 이미지 업로드 하기  (0) 2020.06.12