1. Fork / PR 이란?
fork 는 다른 사람의 github repository를 복제하여 어떤 부분을 수정, 추가, 삭제를 용이하도록 해주는 복제기능이다. 따라서 자신의 원격 저장소에서 다른 사람의 코드를 복제해와서 마음대로 수정할 수 있다.
fork 한 저장소는 원본(repository)와 연결되어있어 원본에 변화가 생기면 그대로 forked된 repository로 반영할 수 있다. (이때 fetch나 rebase의 과정 필요)
그 후 original repository에 변경사항을 적용하고 싶으면 해당 저장소에 pull request를 해야한다.
즉 원작자에게 요청을 보내어(pull request) 원작자가 수락하면, 원작 코드도 내가 수정한 코드로 바뀌고 자신이 contributor가 된다. 수락을 안하면 바뀌지 않는다.
2. Fork 하기
원하는 프로젝트에서 오른쪽 상단의 Fork 클릭
Repoitory 이름 / Description 설정 후 Create fork 클릭 하면 끝!
그러면 내 레포지토리에 추가된 걸 확인할 수 있다.
fork를 취소하고 싶으면 생성된 레파지토리를 삭제하면 취소가 된다.
3. Pull Request 하기
fork해 온 프로젝트에 변경사항을 반영시키기 위해서는 Pull Request를 해야한다. 다만 기존 프로젝트 주인이 PR 내용을 merge한 경우에만 적용된다.
0) PR 하기 전에 fork한 레포지토리를 최신으로 반영해야 할 때가 있다.
https://json.postype.com/post/210431
[Git] Fork 한 repository 최신으로 동기화하기
Fork 한 repository 를 최신으로 동기화시켜야 할 때가 있다. Open Source 에 단발성이 아닌 지속적으로 contribution 하려 할 때수정해서 사용하기 위해 fork 해온 원본 repository 에서 업데이트된 부분을 받아
json.postype.com
1) fork해 온 remote 레포지토리에서 보면, 수정된 내용이 있을경우 아래처럼 뜬다. 여기서 Contribute 클릭 후 Open pull request를 클릭하면 된다.
그러면 아래 사진처럼 뜬다.
상단의 base repository <- head repository라고 되어 있는 부분은 오른쪽에 있는 브랜치에서 왼쪽에 있는 브랜치로 PR 요청을 보낸다는 뜻이다. 다른 브랜치로 변경할 수 있다.
아래쪽의 Able to merge 라는 내용은 PR이 받아들여질 때 충돌 없이 잘 받아들여질 수 있다는 것을 의미한다.
만약 conflict가 발생할 경우 빨간색으로 cannot merge 라는 메시지가 뜰 것이다. 그렇다 하더라도 PR을 보내는 데에는 문제가 없으며 단지 PR을 받아들이는 쪽에서 충돌을 해결해야 한다는 번거로움이 있다.
2) 그리고 오른쪽에 있는 create pull request 버튼을 누르면 아래처럼 뜬다.
여기서 코멘트를 달 수 있다.
3) 코멘트 작성 후 오른쪽 아래에 Create Pull Request 버튼을 눌러 주면 원작자에게 요청이 보내진다.
원작자가 이 request를 받아들이면 본 브랜치로 merge하게 된다.
참조
https://eunhee-programming.tistory.com/159
(GitHub)깃허브 fork에대해서/fork하기,취소하기 - 초보자도 이해하기 쉬운 설명
깃허브 fork에 대해서 <포스팅 요약> 1. fork에대한 간략 설명 2. fork 하기 3. fork 취소하기 fork란? fork는 개발자들끼리 협업을 할때 쓰입니다. 여기서 오해하지 말아야할 것이, 협업을 할때 쓰인다는
eunhee-programming.tistory.com
https://studyjinyeol.tistory.com/186
Git - fork 란?
- fork 는 다른 사람의 github repository를 복제하여 어떤 부분을 수정, 추가, 삭제를 용이하도록 해주는 복제기능이다. - fork 한 저장소는 원본(repository)와 연결되어있어 원본에 변화가 생기면 그대로
studyjinyeol.tistory.com
https://roniruny.tistory.com/113
[Git] 깃 사용법 정리(2) - Fork와 Pull Request
Fork Fork는 아래와 그림과 같이 Kim이라는 사람이 Lee의 프로젝트에 기여하기 위한 첫 시작이다. 기본적으로 Kim이 Lee의 프로젝트의 공동 협력자가 아니라면!! Kim은 자기 마음대로 Lee의 프로젝트를
roniruny.tistory.com
[Git 삽질기록] 'PR을 올리다'? Pull Request에 대해서
서론 이전 글에서 언급했듯이 과제를 Fork하는 방법에 대해 고민하다가, 어찌어찌 Fork를 하고 작업을 시작했다. BUT, git과의 전쟁은 여기서 끝이 아니었다. 나는 또 이런 말을 듣게 된다. "작업한
holika.tistory.com
https://json.postype.com/post/210431
[Git] Fork 한 repository 최신으로 동기화하기
Fork 한 repository 를 최신으로 동기화시켜야 할 때가 있다. Open Source 에 단발성이 아닌 지속적으로 contribution 하려 할 때수정해서 사용하기 위해 fork 해온 원본 repository 에서 업데이트된 부분을 받아
json.postype.com
'1. 프로그래밍 > 1-1. Git' 카테고리의 다른 글
Git - [ 커밋 메세지 규칙 ] (0) | 2022.06.12 |
---|---|
Git - [ issue 관리 ] (0) | 2022.06.11 |
Git - [ 강제로 Git Pull 하기 ] (0) | 2022.04.26 |
Git - [ eclipse 프로젝트 Github 올리기 ] (0) | 2022.04.01 |
Git - [이전 커밋 이름 변경하기] (0) | 2022.02.26 |