Github에서 fork, Pull Request까지

devdo·2022년 1월 5일
0

Git

목록 보기
2/5
post-thumbnail

Github에서 PR을 하는 방법을 정리합니다.

fork 할 프로젝트 선정

포크가 완료되면 개인 계정에 Repository가 만들어집니다.

레포지터리에 있는 url 주소를 복사하고

내 로컬 저장소에 clone합니다.

브랜치는 fork한 프로젝트의 브랜치를 따라 줍니다.

그리고 소스 고치고 commit을 해줍니다.

커밋과 동시에 push 해줍니다.


Create pull Request

이렇게 fork된 프로젝트에 commit을 하는 것은 큰 문제가 없습니다. 혼자 사용하는 Repository이니까요. 간섭받을 일이 없는 것입니다.

문제는 이렇게 commit한 내용을 원본 git에 Pull 하는 때입니다.

원본에 내가 수정한 코드가 pull 받게 할려면 pull 권한이 있는 관리자에게 request를 보내야 합니다.

그것이 pull request인 겁니다.


👀 승인자 추가(원본 저장소 관리자가)

이런 작업을 할때 Repository 생성시
Setting > branches 에 들어가서 셋팅을 해야 합니다.

Required a pull request before merging > Require approvals
그 다음 요청 승인해줄 사람 수를 정합니다. Default로 1 명으로 지정됩니다.

그리고 admin 관리자 역시 Pull Request을 받고 싶다면
Incluse adminstrators를 지정해줄 수 있습니다.

만약 레포지토지에 branch를 따서(feature/dsg) commit 변경한 사항을 push 했다면 다음 화면이 나옵니다.

# git branch 만들기
git branch feature/dsg

이 화면 옆에 Reviewer를 정할 수 있습니다. 리스트로 나오는 것이니 그중 골라주면 됩니다.

그리고 Create Pull Request 버튼을 눌러주면

다음 화면이 나옵니다.

Reviewer의 승인요청만 기다리면 됩니다.

🙂 간단한 fork -> pull request 하게끔 하는 공용 프로젝트는 이런 승인, 리뷰어없이 아무설정 안하고 하시면 됩니다.


👁‍🗨 Compare

브랜치 왼쪽에 Compare버튼을 클릭해주면 Pull request 전에 원본 소스와 fork된 소스를 비교해주는 Comparing changes 화면이 나오게 됩니다.

그냥 될 줄 알았는데.. 또 글을 쓰라고 합니다.
그냥 코드에 어떤 걸 수정했는지 써주면 됩니다.

영어 프로젝트라면 영어로 번역기 써서 돌리시면 됩니다.


Merge Pull Request

Pull Request를 받은 원본 저장소 관리자는 코드 변경내용을 확인하고 Merge 여부를 결정하게 됩니다.

원작자가 승인을 하면 Merge Pull Request -> Confirm merge로 원본 저장소에 변경된 사항이 반영이 되고, pull request의 상태는 closed로 변경됩니다.
만일 맘에 들지 않는다 하면 Reject 된다.



참고

profile
배운 것을 기록합니다.

0개의 댓글