본문 바로가기
개발툴/깃git

Git1 - fork, clone

by 시에라177 2022. 6. 22.

-이전에 새로운 로컬 저장소를 만드는 방법은 init과 clone이 있다고 말했다. 그렇다면 fork와 clone의 차이는 무엇일까.

 

#1 차이

fork는 누군가 깃허브(원본 레포지토리, 업스트림 레포지토리)에서 나의 깃허브(원격 레포지토리)복사하는 것이고

clone은 원본레포지토리나 원격레포지토리에서 git을 사용해 즉 나의 컴퓨터로 복제하는 것이다.

 

-그리고 해당 프로젝트(디렉토리)에 대한 변경 사항을 pull request할 수 있다. pull request는 내가 수정했으니 검토하고 원본에 합쳐주길 부탁하는 것이다.

 

#2 - fork하지 않고 사용

-혼자 프로젝트를 한다면 fork하지 않고 사용할 수도 있다. 

-사용 방식은 아래의 이미지와 같다.

 

https://www.toolsqa.com/git/difference-between-git-clone-and-git-fork/

#3 - fork하고 사용

-누군과와 함께 깃허브에서 프로젝트를 한다면, 나의 원격레포지토리로 해당 프로젝트를 fork하고, 나의 원격레포지토리에서 로컬레포지토리로 clone하여 작업한다. 그리고 작업물을 나의 원격레포지토리에 푸쉬하고 원격레포지토리에서 업스트림레포지토리에 pull request를 보낸다.

-fork한 레포지토리는 원본에 변화가 생기면 나의 원격레포지토리에도 반영할 수 있다. fetch 혹은 rebase를 사용한다.

https://www.toolsqa.com/git/difference-between-git-clone-and-git-fork/

 

#4 - 클론 후 브랜치도 가져오기

-클론 후에 main브랜치만 있을 것

-git checkout -t origin/가져올 브랜치명 으로 브랜치도 가져올 수 있다.

'개발툴 > 깃git' 카테고리의 다른 글

Git 0-추가. branch, HEAD & detached head  (0) 2022.06.25
Git2- config 와 remote  (0) 2022.06.24
Gig0 - init, clone, add , commit. 브랜치.  (0) 2022.06.22