여기까지 실습에서 만들어온 구조는
master : 1-2-5
exp : 1-2-3-4
의 구조로 만들었었다.
-------------------------------
병합 시, 병합할 돈 많은(?ㅋ) (본체로 둘) branch로 checkout한 후, 한다
ex)
master 브랜치에서, exp 브랜치를 병합(인수)할떄는
$ git merge exp (master 브랜치로 체크아웃된 상태여야함)
exp브랜치에서 master 브랜치를 병합인수할때도 똑같은 과정을 반복한다. (exp 브랜치로 체크아웃된 상태여야함)
영어로 merge(병합)라고 함
git log --branches --decorate --graph --oneline
exp를 master로 병합하는 방법을 살펴보자
마스터로 체크아웃을 한다
마스터에서 머지를 하는 것
git merge exp
머지했다는 메시지가 나옴
:wq(2:50)
git log --branches --decorate --graph --oneline
Auto-merging f1.txt
CONFLICT (content): Merge conflict in f1.txt
Automatic merge failed; fix conflicts and then commit the result.
2개의 부모를 갖음
ls -al > 파일 목록을 보니 master가 드디어 f3.txt를 가지게 됨
그러면 exp도 완전히 master와 같게 만들어 보자
git checkout exp
(5:30) CONFLICT 나는 경우가 있음
똑같이 하지 않았기 때문임 > 충돌을 해결하는 방법에서 알려줄 것임
master를 exp로 가져오고 싶다
git merge master
git log --branches --decorate --graph --oneline
이렇게 하면 exp와 master는 완전히 똑 같은 상태가 되는 것임
q해서 나옴
이제 더이상 exp는 필요 없음
지워도 됨
git checkout master
git branch -d exp(7:10)
브렌치 삭제됨
git log --branches --decorate --graph --oneline
exp는 사람짐
이렇게 해서 병합이 무엇인가에 대해 살펴 봤음