#17 Git - Branch 병합

김현준·2022년 12월 23일
0

GIT

목록 보기
17/41

현재까지 작업을 분기해서 각자의 작업이 자신만의 히스토리를 만들어 나갔습니다. 하지만 이때 특정 작업들끼리 병합할 필요가 생길 수 있습니다.

이번 시간에는 병합 merge 를 하는 방법에 대해 알아보겠습니다.

git log --branches --graph --decorate --oneline 으로 현재 상태를 먼저 보겠습니다.

대충 22 에서부터 여라가지 분기점이 생긴것을 확인 할 수 있습니다.

exp_2 의 내용을 master 로 이동해보겠습니다.
exp_244 에 있는 내용을 master 에도 적용시켜보겠습니다.

현재 branchmaster 인 상태에서 git merge exp_2 명령을 실행시켜줍니다.

그랬더니 오류가 발생합니다.

git merge --abort 를 통해 상태 해제를 해줍니다.

이후 다시 git merge exp_2 명령을 실행한 후에
addcommit 를 해줍니다.

이후 git log --branches --graph --decorate --oneline 을 실행시

정상적으로 병합이 된 것을 확인 할 수 있습니다.
따라서 master 는 두개의 부모 정점을 가지게 됩니다.
기존의 66 번 커밋 메세지와 병합한 44 번 커밋메세지가 그것입니다.

하지만 현재 exp 는 커밋 66 , 55 번을갖고있지 못합니다.
이번에는 master 가 작업한 내용도 exp 에 적용시켜보겠습니다.

expmaster 가 완전 같은 상태가 되도록 해보겠습니다.

git checkout expbranch 를 변경해준후 git merge master 를 통해 masterexp 로 옮기겠습니다.

정상적으로 병합이 되었습니다.

다시 git log --branches --decorate --graph --oneline 실행시

exp 의 위치를 잘 보면 master 의 위치와 똑같이 된것을 확인 할 수 있습니다.

즉 이제 expmaster 는 똑같은 상태입니다.

이제 exp 는 필요 없기 때문에 -d 옵션을 통해서 exp 를 삭제 해줍니다.

다시 git log --branches --decorate --graph --oneline 실행시
exp 가 깔끔하게 사라진 것을 확인 할 수 있습니다.

profile
울산대학교 IT융합학부 22학번

0개의 댓글