Git, GitHub 입문4

JR_min·2022년 6월 20일
0

Git GitHub시작하기

목록 보기
4/7

fork를 통해 git 저장소 통째로 복사하기

오픈소스 프로젝트에 기여하고 싶은데, push 권한이 없다.
commit전 반드시 컬래버레이터 등록을 부탁해야 하나? (X)
fork 기능을 통해 저장소를 통째로 복제 (O)

  1. git 저장소를 내 계정으로 복제한다.
  2. 내 계정의 저장소에 자유롭게 커밋, 푸시를 한다.
  3. 내 저장소의 브랜치와 원본 저장소의 브랜치의 merge를 요청한다.

branch vs fork

branch 와 fork 모두 코드를 협업하기 위해 분기점을 나누는 방식이지만 특성이 다르다.

branch

  • 하나의 원본 저장소에서 분기를 나눈다.
  • 하나의 원본 저장소에서 코드 커밋 이력을 편하게 볼 수 있다.
  • 다수의 사용자가 다수의 브랜치를 만들면 관리하기 힘들다.
  • 작은 팀에서의 협업

fork

  • 여러 원격저장소를 만들어 분기를 나눈다.
  • 원본 저장소에 영향을 미치지 않으므로 마음껏 코드를 수정할 수 있다.
  • 원본저장소의 이력을 보려면 따로 주소를 추가해야 한다.
  • 오픈소스 프로젝트 등 불특정 다수의 협업

fork 실습


오른쪽 상단 부분 watch -> 이 프로젝트에 관심이 있어서 업데이트 받아보기
star -> 프로젝트가 마음에 든다 좋아요 표시
fork -> 나만의 copy본 만들기


소스트리 새로 만들기 -> URL 복제 -> 복사한 저장소 주소 -> 폴더 설정 후 copy

원본 저장소 변경 이력 보기 위해 주소 추가하기 (소스트리)

원본 저장소 주소 복사

다음과 같이 소스트리에서 원격 저장소 추가

원본 저장소 이름 upstream 으로 지정하고 복사한 저장소 주소 추가

이렇게 추가하지 않으면 fork한 저장소(내가 작업하는 copy한 내 저장소)의 이력만 볼 수 있다.
원본 저장소의 변경이력을 보고 싶다면 다음과 같이 원본 저장소 주소 추가하기

다음 과 같이 upstream 우클릭 후 fetch 하면 원본 저장소의 branch 와 변경 이력 모두 확인 가능

0개의 댓글