본문 바로가기
Git

[Github] Github Pull Request - Fork

by sojung118 2024. 10. 24.

[Github] Github Pull Request - Fork

※ Fork and Pull 모델 - 공동 기여 저장소 모델 

 


 

 

※ Fork and Pull 모델

  • 중앙화된 코드 호스팅 시스템
  • 중앙의 호스팅 시스템을 이용하여 패치 과정을 관리
  • 개별 기여자는 그 프로젝트의 복사본을 코드 호스팅 시스템 내 자신의 저장소에 생성
  • 기여자들은 복사본을 수정하고 수정된 사항을 병합해 줄 것을 요청

 

■ 시나리오

  • Github에서 하나의 저장소를 선택한다.
  • 선택한 저장소를 Fork 한다.
  • 포크한 저장소를 로컬에 복제한다.
  • 로컬 저장소에서 새로운 브랜치를 만든다.
  • 내용을 수정한다.
  • 수정된 내용을 로컬 저장소에 반영한다.
  • 로컬 저장소의 내용을 원격에 반영한다.
  • 원격에 반영된 내용을 풀-리퀘스트를 요청한다.

 


 

 

※ Github - Fork 실습

 

깃허브 내에서 'solgits' 라는 분의 pylearn 저장소에 들어가서 fork를 해보겠다.

  • fork 하기를 원하는 저장소에 들어와서 우측 상단 Fork 를 클릭

 

Create fork

  • Create fork를 하면 내 저장소에서 forked from ~ 을 확인 가능

 

  • 내 저장소에도 solgits 로부터 fork 해온 pylearn 저장소를 발견할 수 있음

 


 

 

  • fork 해온 pylearn 저장소 안에서 Clone 해주기

 

  • git clone 복사한 주소 넣어주기
  • pylearn 저장소로 들어가기
  • ll 로 어떤 파일들이 있는지 확인

 

  • turtle 폴더 들어가기
  • 3가지 py 파일 중 Square2.py 를 수정

 

  • 원래 forword(100) → forward(50) 으로 숫자 변경시키기
  • 모두 수정 후 :x 로 저장시키고 vi 나가기

 

  • git status로 상태 확인 : modified 된 Square2.py 파일이 있음
  • add 후 commit 시키기 (커밋 메시지 포함)

 

  • git remote --verbose : 원격 리포지토리 연결 상태 확인
  • git push origin master : master 브랜치로 push

 

  • 내용을 변경하고 push 해주었기 때문에 Open pull request 를 해주면 됨

 

  • Open pull request를 누르면 보이는 화면
  • 변경된 내용 설명 작성 가능
  • 변경된 내용 확인 가능
  • Create pull request 를 해주기

 

  • 해당 작업자에게 요청이 완료된 상황