차이점: 1. Rebase는 현재 커밋을 퍼블릭 브랜치의 끝에 두고, merge는 현재 커밋을 퍼블릭 브랜치와 병합합니다. 2. merge 명령으로 충돌이 해결된 후 커밋이 생성됩니다. rebase 명령은 충돌을 해결하는 데 사용됩니다. 충돌이 해결된 후에는 추가 커밋이 생성되지 않습니다.
이 문서의 운영 환경: Windows 10 시스템, Git 버전 2.30.0, Dell G3 컴퓨터.
git에서 rebase와 merge의 차이점은 무엇인가요?
Rebase는 현재 브랜치의 커밋을 공용 브랜치 끝에 두므로 이를 rebase라고 합니다. 이는 이 분기를 공개 분기에서 다시 가져오는 것과 같습니다.
예: master에서 기능 브랜치를 가져와서 여러 커밋을 제출하고 누군가 자신이 개발한 내용을 master에 병합하면 master는 브랜치를 끌어왔을 때보다 몇 가지 더 많은 커밋을 갖게 됩니다. 시간이 지나면 현재 커밋은 그 사람의 커밋 뒤에 배치됩니다.
merge는 공용 브랜치를 현재 커밋과 병합하여 새로운 커밋을 형성합니다.
병합과 리베이스를 사용한 후 git log의 차이점은 merge 명령이 병합된 브랜치를 유지하지 않는다는 것입니다.
충돌 처리 방법:
(올인원) merge 명령을 사용하여 브랜치를 병합하고 충돌을 해결하고 git add 및 git commit -m'fix conflict'를 실행합니다. 이때 커밋이 생성됩니다.
(대화형) rebase 명령을 사용하여 브랜치를 병합하고, 충돌을 해결하고, git add 및 git rebase --continue를 실행하면 추가 커밋이 생성되지 않습니다. 이것의 장점은 '깨끗'하고 브랜치에서 브랜치를 해결하기 위한 의미 없는 커밋이 없다는 것입니다. 단점은 병합된 브랜치에 여러 커밋이 있는 경우 여러 충돌을 반복적으로 처리해야 한다는 것입니다.
git pull과 git pull --rebase의 차이점: git pull은 'get'과 merge라는 두 가지 작업을 수행합니다. 따라서 rebase를 추가한다는 것은 rebase 방식으로 브랜치를 병합하는 것을 의미하며, 기본값은 merge입니다.
추천 학습: "Git Tutorial"
위 내용은 git에서 리베이스와 병합의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!