'git remote add upstream'은 무엇을 도와 줍니까?
나는 https://wiki.diasporafoundation.org/Git_workflow#Rebase_your_development_branch_on_the_latest_upstream 에서 읽고있었습니다.
다음은 추출물입니다.
저장소가 최신 상태입니다.
개발 트렁크에서 최신 업데이트를 받으려면 다음을 입력하여 기본 GitHub 저장소를 원격으로 설정하는 일회성 설정을 수행하십시오.
$ git remote add upstream git://github.com/diaspora/diaspora.git
최신 업스트림에서 개발 브랜치 리베이스
개발 브랜치를 최신 상태로 유지하려면 업스트림 마스터의 현재 상태를 기반으로 변경 사항을 리베이스하십시오. git-rebase 란 무엇입니까? 리베이스에 대해 자세히 알아 보려면 아래 섹션을 참조하십시오.
위에서 설명한대로 업스트림 브랜치와 100-retweet-bugfix라는 개발 브랜치를 설정 한 경우 업스트림을 업데이트하고 로컬 마스터를 업데이트하고 다음과 같이 브랜치를 리베이스합니다.
$ git fetch upstream $ git checkout master $ git rebase upstream/master $ git checkout 100-retweet-bugfix
[모든 필요에 따라 브랜치에서 커밋되었는지 확인]
$ git rebase master
이 경우 왜 '원격 업스트림'을 추가해야합니까? 내가 방금 한 일이 아니 었어.
$ git checkout master
$ git pull origin master
$ git checkout 100-retweet-bugfix
[모든 필요에 따라 브랜치에서 커밋되었는지 확인]
$ git rebase master
위키는 분기 된 저장소 관점에서 이야기하고 있습니다. 기본 디아스포라 리포지토리의 포크가 될 원본에서 당기고 밀 수 있습니다. 이 기본 저장소에서 변경 사항을 가져 오려면 로컬 저장소에 원격 "업스트림"을 추가하고이 원본을 가리키고 가져옵니다.
따라서 "origin"은 사용자가 밀고 당기는 포크 저장소의 복제본입니다. "Upstream"은 메인 저장소의 이름으로, 포크의 복제본을 가져 와서 업데이트 된 상태로 유지하지만 푸시 액세스 권한이 없습니다.
이것은 당신 origin
이 아닌 자신의 것을 가지고있을 때 유용합니다 upstream
. 즉, origin
개발 및 로컬 변경을 수행 한 다음 때때로 upstream
변경 사항을 병합하는 자체 저장소가 있을 수 있습니다 . 예제와 강조 표시된 텍스트의 차이점은 예제에서 업스트림 저장소의 복제본으로 직접 작업하고 있다고 가정한다는 것입니다. 강조 표시된 텍스트는 아마도 원래 업스트림의 복제본이었던 자체 저장소의 복제본에서 작업하고 있다고 가정합니다.
"후퇴 적 포크"에 사용될 수 있다고 생각합니다.
Git 리포지토리가 있고 이제 다른 리포지토리를 포크해야한다고 결정한 경우. 소급 적으로 새 저장소를 대상으로하여 저장소를 사용하는 팀을 방해하지 않고 포크가되기를 원합니다.
그러나 나는 틀릴 수 있습니다.
참고 URL : https://stackoverflow.com/questions/8948803/what-does-git-remote-add-upstream-help-achieve
'IT Share you' 카테고리의 다른 글
Java 응용 프로그램에서 사용자 설정을 저장하는 가장 좋은 방법은 무엇입니까? (0) | 2020.12.08 |
---|---|
IIS Express — SSL 작동하기 (0) | 2020.12.08 |
Python "개인"함수 코딩 규칙 (0) | 2020.12.08 |
Backbone.js 뷰에서 $ el과 el의 차이점은 무엇입니까? (0) | 2020.12.08 |
데이터웨어 하우스 대 OLAP 큐브? (0) | 2020.12.08 |