[Github] 깃허브 Upstream 레퍼지토리로 프로젝트 관리하기!

 

 

 

Github

 

안녕하세요 오늘은 Github의 업스트림 레퍼지토리를 이용하여 프로젝트를 관리하는 법을 알려드리겠습니다.

 

제가 최근 팀프로젝트 중인 레퍼지토리를 업스트림 레퍼지토리 방식을 사용해 관리하고 있는데, 상당히 편리해서 공유합니다.

 

 

 

 

 

기본 레퍼지토리

 

보통 origin 이라고 부르는 제가 생성하여 관리하는 레퍼지토리입니다.

 

 

Parking-Service Organization

 

여기서 해당 프로젝트에 대한 Organization 을 만들고 이 레퍼지토리는 Setting에서 Organization으로 옮겨줄 것입니다.

 

 

Organization 만드는 법

https://pgmjun.tistory.com/36

 

[Github] Organization 생성하기!

이번 시간엔 협업에 사용되는 깃허브의 Organization을 생성하는 방법을 알려드리겠습니다. 깃허브에 접속한 뒤에 우측 상단 의 '+' 버튼을 클릭하여 New organization 을 선택합니다. 저는 유료버전의

pgmjun.tistory.com

 

 

Origin 레퍼지토리 - Settings - 맨 아래로 스크롤 - Transfer ownership

 

여기 보이는 Danger Zone 에서 Transfer 버튼을 누릅니다.

 

 

그리고 위의 입력칸에 organization name을 기입하면 레퍼지토리가 해당 organization으로 넘어가게 됩니다.

 

Organization 으로 넘어온 레퍼지토리

 

이제 이 Organization으로 이동된 내 레퍼지토리가 Upstream 레퍼지토리가 됩니다.

 

이 레퍼지토리를 Fork 해서 내 Repository로 추가시켜주면

 

 

Fork 된 Repository

 

이 Fork된 레퍼지토리가 Origin 역할을 하게 됩니다.

 

 

Code - HTTPS

 

로컬도 생성해주어야 하니 HTTPS 링크를 copy하여 인텔리제이에 붙여넣어줍니다.

 

 

 

여기 붙여넣어주면 Local - Origin - Upstream 레퍼지토리 구조를 형성할 수 있습니다.

 

 


커밋 방법

 

 

Local 에서 Upstream으로 커밋되는 과정입니다.

 

Local(인텔리제이) 에서 Commit&Push 를 하게되면 Origin이 변경됩니다.

 

그럼 Github에 접속하여 Origin으로 들어가 Upstream으로 PR을 합니다.

 

그 다음 Merge하고 변경사항을 반영할 LocalPull 하게 되면 끝이 납니다.

 

local - origin - upstream

 

이제 위의 그림이 이해가 가실 것입니다.

 

이상으로 포스팅을 마치겠습니다. 감사합니다.

 

 

 

 

 

 

 

reference: 

https://stackoverflow.com/questions/9257533/what-is-the-difference-between-origin-and-upstream-on-github