Merge

[ 상황 ] feature 브랜치에서 기능을 개발하고 develop 브랜치로 병합을 하였다. 병합 후 서버를 올렸더니, feature 브랜치의 기능에 오류가 있는 것을 발견하고 병합된 commit 을 revert 시켰다. 오류 수정 후 다시 feature → develop 머지를 진행하는 경우 case1. 이 후 작업한 내용이 revert 작업 파일과 다른 경우 revert 이후 작업들만 develop에 머지된다. (충돌이 나지 않아 실수하기 쉬움) feature 내용들이 모두 develop 에 머지될 것으로 보이지만, revert 한 commit 이 feature 에서 작성한 commit 보다 최신일 경우에는 이 후 작업 내용들만 머지된다. case2. revert 되었던 파일을 수정한 경우 수정된 파..
PR을 올리고 approved가 끝나면 담당자는 merge를 하게 되는 merge 방식에는 3가지가 존재한다. 1. Create a mege commit 기본값으로 선택되어 있는 merge 방식 feature 브랜치가 root 브랜치로 합쳐지는 기본적인 머지 방식 2. Squash and merge feature 브랜치에 커밋 된 여러 개의 변경사항을 1개의 커밋으로 압축하여 root브랜치에 추가하는 방식 Squash and merge 를 사용하게 되면 위와 같은 커밋 이력들을 하나의 커밋 이력으로 압축할 수 있다. 3. Rebase and merge feautre 브랜치에 커밋된 여러 개의 변경사항을 root브랜치의 최상단에 끼워 넣는 방식 위와 같은 상황에서 Rebase and merge 를 하게되면..
두 별도의 브랜치를 합치는 몇가지 방법을 알아볼 텐데, 처움으로 살펴볼 방법이 merge이다. Git의 합치기(merge)는 두 개의 부모(parent)를 가리키는 특별한 커밋을 만들어 낸다. 두 개의 부모가 있는 커밋이라는 것은 "한 부모의 모든 작업내역과 나머지 부모의 모든 작업, 그리고 그 두 부모의 모든 부모들의 작업내역을 포함한다"라는 의미가 있다. 만약에 bugFix란 브랜치가 C2를, master 브랜치가 C3를 가리키고 있는 상태에서 위 그림과같이 만드려면 아래와 같은 명령어가 필요하다. git checkout master // master 브랜치로 체크아웃 git merge bugFix // bugFix 브랜치와 병합(merge)
깡냉쓰
'Merge' 태그의 글 목록