origin/master
has commit A--B--C
과 my local/master
has commit 이라고 가정 해 보겠습니다 A--B--D
.
사용하면 git pull --rebase
어떻게 되나요?
사용하면 git pull --ff-only
어떻게 되나요?
결과 커밋 트리에 차이가 있습니까?
답변:
git pull --rebase를 사용하면 어떻게됩니까?
git pull --rebase
대략 다음과 같습니다.
git fetch
git rebase origin/master
즉, 원격 변경 ( C
)이 로컬 변경 ( D
) 전에 적용 되어 다음 트리가 생성됩니다.
A -- B -- C -- D
git pull --ff-only를 사용하면 어떻게됩니까?
실패합니다.
git pull --ff-only
에 해당
git fetch
git merge --ff-only origin/master
--ff-only
빨리 감을 수있는 경우에만 원격 변경 사항을 적용합니다. 남자로부터 :
현재 HEAD가 이미 최신 상태이거나 병합이 빨리 감기로 해결 될 수없는 경우 0이 아닌 상태로 병합 및 종료를 거부합니다.
로컬 및 원격 지점이 분기 되었기 때문에 빨리 감기로 해결할 수 없으며 git pull --ff-only
실패합니다.
A--B--C
.
git pull --rebase --ff-only
할까요? (C & D있다 가정)
pull
병합 커밋을 도입 할 수 있지만 rebase 및 ff로만 작업하는 것을 선호 할 수 있습니다.
D
로컬 변경에 커밋이 없으면 어떻게됩니까? 두 명령이 동일합니까?