나는 망할 놈의 멍청한 놈이야,하고의 차이 배우려고 노력 git pull대를 git rebase. 둘 다 동일한 목적에 기여한다고 생각하기 때문에 누군가 어떤 옵션을 사용할 때 예를 들어 줄 수 있습니까?
나는 망할 놈의 멍청한 놈이야,하고의 차이 배우려고 노력 git pull대를 git rebase. 둘 다 동일한 목적에 기여한다고 생각하기 때문에 누군가 어떤 옵션을 사용할 때 예를 들어 줄 수 있습니까?
답변:
git pull와 git rebase호환되지 않습니다,하지만 그들은 밀접하게 연결되어있다.
git pull원격에서 현재 분기의 최신 변경 사항을 가져와 해당 변경 사항을 분기의 로컬 복사본에 적용합니다. 일반적으로 이것은 병합에 의해 수행됩니다. 즉, 로컬 변경 사항이 원격 변경 사항에 병합됩니다. 그래서 git pull유사하다 git fetch & git merge.
리베이스는 병합의 대안입니다. 두 분기를 결합하는 새 커밋을 만드는 대신 분기 중 하나의 커밋을 다른 분기 위로 이동합니다.
병합 ( git pull --rebase) 대신 rebase를 사용하여 가져올 수 있습니다 . 로컬 변경 사항은 원격 변경 사항과 병합되는 대신 원격 변경 사항을 기반으로합니다.
git-pull-다른 저장소 또는 로컬 브랜치 GIT PULL 에서 가져 와서 통합
기본적으로 원격 분기를 로컬로 가져옵니다. 예 :
git pull origin master
마스터 브랜치를 로컬 저장소로 가져옵니다.
git- rebase- 업데이트 된 업스트림 헤드 GIT REBASE에 대한 포워드 포트 로컬 커밋
이것은 다른 사용자가 원격으로 수행 한 변경 사항에 로컬 변경 사항을 적용하는 것입니다. 예를 들면 :
SOME-FEATURE이제 로컬 브랜치에서 그의 변경 사항과 변경 사항을보고 싶습니다. 그런 다음 master지점을 확인합니다.
git checkout master
그러면 다음을 가져올 수 있습니다.
git pull origin master
그런 다음 지점으로 이동합니다.
git checkout SOME-FEATURE
그리고 당신은 master그것에서 최신 변경 사항을 얻고 분기 커밋을 맨 위에 올려 놓기 위해 rebase 를 할 수 있습니다 .
git rebase master
이제 좀 더 명확 해 졌으면합니다.
git fetch다음을 수행하십시오 git rebase origin/master.