원격 마스터를 로컬 분기에 병합하는 방법
다른 사용자의 프로젝트에서 분기한 프로젝트의 로컬 분기("configUpdate")가 있으며, 이에 대해 많은 변경을 수행했으며 변경 내용을 내 로컬 분기에 병합하려고 합니다.
해봤습니다
git pull --rebase origin configUpdate
하지만 최신 변경 사항을 파악하지 못했습니다. 어떻게 두 가지를 병합할 수 있습니까?(또한 보너스 포인트에 대해서는 제가 무엇을 했습니까?pull --rebase네?
피쳐 분기에서(예:configUpdate:)실:
git fetch
git rebase origin/master
또는 더 짧은 형태:
git pull --rebase
작동하는 이유:
git merge branchname에서 새 .branchname현재 분기에 추가합니다.필요한 경우 "합병" 커밋을 맨 위에 자동으로 추가합니다.git rebase branchname에서 새 .branchname변경 내용 아래에 삽입합니다.보다 정확하게, 그것은 현재 분기의 역사를 수정하여 그것이 다음의 팁에 기초하도록 합니다.branchname그 위에 당신이 한 모든 변화들과 함께.git pull기본적으로 와 동일합니다.git fetch; git merge origin/master.git pull --rebase기본적으로 와 동일합니다.git fetch; git rebase origin/master.
그럼 왜 당신은 당신이 사용하려고 합니까?git pull --rebasegit pull다음은 간단한 예입니다.
새 기능에 대한 작업을 시작합니다.
변경사항을 푸시할 준비가 되었을 때 다른 개발자가 여러 커밋을 푸시했습니다.
네가 만약
git pull(Merge를 사용하는 경우) 변경 내용은 자동으로 생성된 병합 커밋 외에도 새 커밋에 의해 묻힙니다.네가 만약
git pull --rebase대신 Git는 마스터를 업스트림의 것으로 빠르게 전달한 다음 변경 사항을 맨 위에 적용합니다.
난 그것을 발견했습니다.
$ git fetch upstream
$ git merge upstream/master
로컬 지점으로 전환
> git checkout configUpdate
원격 마스터를 분기에 병합
> gitrebase master configUpdate
충돌이 있는 경우 수정하고 충돌된 각 파일에 대해 명령을 수행합니다.
> git add [path_to_file/transmitted_file] (예: git add app/sys/scripts/test.js)
기본 재배치 계속
> gitrebase --delay.
Gitrebase는 나에게 효과가 없는 것처럼 보였습니다.Gitrebase 후 로컬 분기에 변경 사항을 푸시하려고 하면 계속 오류가 발생했습니다("힌트: 현재 분기의 팁이 원격 분기의 팁 뒤에 있기 때문에 업데이트가 거부되었습니다.다시 누르기 전에 원격 변경사항(예: 'git pull...')을 통합합니다. git pull 후에도 마찬가지입니다.마침내 저에게 효과가 있었던 것은 git merge였습니다.
git checkout <local_branch>
git merge <master>
만약 당신이 나와 같은 초보자라면, 여기 git merge vs git rebase에 대한 좋은 기사가 있습니다.https://www.atlassian.com/git/tutorials/merging-vs-rebasing
이는 Visual Studio를 사용하는 개발자에게 적용됩니다.
- Git 메뉴 > Manage Branchs > remote/origin 클릭
- master를 마우스 오른쪽 버튼으로 클릭 > 'origin/master'를 [local branch]에 병합합니다.
참고: 최근 Git 저장소에서는 master를 main이라고 합니다.
언급URL : https://stackoverflow.com/questions/7200614/how-to-merge-remote-master-to-local-branch
'IT' 카테고리의 다른 글
| 로드된 jQuery 버전을 확인하는 방법은 무엇입니까? (0) | 2023.05.23 |
|---|---|
| AdMob에 응용 프로그램을 넣은 후 "라이브러리를 찾을 수 없습니다" 오류가 발생 (0) | 2023.05.23 |
| gitrebase: "error: cannot stat 'file': 권한이 거부되었습니다." (0) | 2023.05.23 |
| PowerShell을 사용하여 관리자로 명령을 실행하시겠습니까? (0) | 2023.05.23 |
| Git 저장소에서 모든 태그 삭제 (0) | 2023.05.23 |
