1. Fork란?

빙키와 개리가 만든 저장소가 있습니다. 이 저장소에 없는 기능을 알리가 만들고 싶어합니다. 하지만 저장소의 권한은 빙키와 개리에게만 있고 알리에게는 없습니다. 이때, 저장소의 권한을 얻어내기 위해 알리는 기여자 등록을 해야 할까요?

기여자 등록을 따로 하지 않아도 Fork기능을 사용하여 원본 저장소를 복사해 내 저장소에서 commit > push 하실 수 있습니다. 기능 생성 후, 내 저장소 브랜치와 빙키와 개리의 저장소의 브랜치에 merge를 하면 됩니다.

물론 허락을 맡아야 합니다!

<aside> 💡 입사 과제로, 실무에서 다음과 같은 형태를 자주 사용합니다.

  1. Fork로 과제를 복사
  2. 과제 수행 후 pull request(플리퀘 또는 PR보낸다 얘기합니다.) </aside>

commit-50.png

2. Fork 하는 방법

  1. 복사하고자 하는 Github 레파지토리에 들어가서 오른쪽 상단에 Fork를 클릭합니다.

Untitled

Fork가 완료되면 내 레파지토리에 생성된 것을 볼 수 있습니다.

Untitled

  1. 이제 포크한 저장소를 클론하기 위해 주소 복사 버튼을 클릭합니다.

Untitled

저장하고 싶은 곳으로 이동한 후, 클론합니다.

$ cd 저장하고_싶은_디렉토리
$ git clone 복사한_git주소 .

이때, 개리와 빙키의 원본 저장소의 변경 이력을 볼 수 없습니다. 원본 저장소와 알리의 저장소는 다르기 때문이죠. 원본 저장소의 이력을 보고 싶은 경우에는 원본 저장소를 원격 저장소에 추가하셔야 합니다.

원격 저장소 이름들을 가지고 옵니다.

$ git remote

스크린샷 2022-01-20 오후 2.53.51.png