질문 : Git 브랜치를 마스터로 병합하는 가장 좋은 (가장 안전한) 방법은 무엇입니까?
master
에서 새 브랜치가 생성되면 test
라고합니다.
master
하거나 다른 브랜치를 생성하고 나중에 master
로 병합하는 여러 개발자가 있습니다.
test
작업에 며칠이 걸리고 master
내부의 커밋으로 test
를 지속적으로 업데이트하고 싶다고 가정 해 보겠습니다.
test
에서 git pull origin master
할 것입니다.
질문 1 : 이것이 올바른 접근 방식입니까? 다른 개발자는 내가 btw에서 작업 한 것과 동일한 파일로 쉽게 작업 할 수 있습니다.
test
에 대한 내 작업 master
다시 병합 할 준비가되었습니다. 내가 생각할 수있는 두 가지 방법은 다음과 같습니다.
A:
git checkout test
git pull origin master
git push origin test
git checkout master
git pull origin test
B:
git checkout test
git pull origin master
git checkout master
git merge test
--rebase
사용하지 않습니다. 왜냐하면 내 이해에서 rebase는 master
에서 변경 사항을 가져오고 그 위에 스택 내 다른 사람들이 만든 변경 사항을 덮어 쓸 수 있기 때문입니다.
질문 2 : 이 두 가지 방법 중 어느 것이 옳은가? 차이점은 무엇입니까?
이 모든 것의 목표는 master
에서 일어나는 일로 test
브랜치를 업데이트하고 나중에 타임 라인을 가능한 한 선형으로 유지하기 위해 master
로 다시 병합 할 수 있습니다.
답변
어떻게 할 것인가
git checkout master
git pull origin master
git merge test
git push origin master
원격 지점에서 로컬 지점이있는 경우이 지점이 아닌 다른 지점을 원격 지점과 병합하는 것이 불편합니다. 또한 내가 푸시하고 싶은 것에 만족할 때까지 변경 사항을 푸시하지 않을 것이며 또한 전혀 푸시하지 않을 것입니다. 이는 저와 제 로컬 저장소에만 해당됩니다. 당신의 설명에서 그 test
는 당신만을위한 것 같습니까? 그래서 그것을 출판 할 이유가 없습니다.
git은 항상 당신과 다른 사람들의 변화를 존중하려고 노력하므로 --rebase
. 적절하게 설명 할 수 없다고 생각 하므로 Git 책-Rebasing or git-ready : Intro into rebasing for a little description. 아주 멋진 기능입니다
출처 : https://stackoverflow.com/questions/5601931/what-is-the-best-and-safest-way-to-merge-a-git-branch-into-master
'개발관련 > Git' 카테고리의 다른 글
.gitignore 제외 폴더이지만 특정 하위 폴더 포함 (0) | 2021.09.27 |
---|---|
커밋 메시지로 Git 저장소를 검색하는 방법 (0) | 2021.09.17 |
다른 git 병합 전략 사용 시기 (0) | 2021.09.16 |
.gitconfig에서 여러 사용자를 지정하는 방법 (0) | 2021.09.16 |
git pull 실행 취소, 저장소를 이전 상태로 가져 오는 방법 (0) | 2021.09.16 |