Nayuta’s velog
로그인
Nayuta’s velog
로그인
병합방식
박태영
·
2024년 6월 18일
팔로우
0
git
0
git
목록 보기
26/44
fast-forward
a 브랜치에서는 작업이 이루어진것이 없고 b브랜치는 a브랜치의 자식
두 브랜치를 병합할 때 새로운 커밋을 추가할 필요 없이 A브랜치의 HEAD를 B브랜치로 옮김으로써 병합 마무리
필요에 따라 B 브랜치를 삭제.
장점
1. 깔끔한 히스토리
fast-forward merge는 병합 커밋을 생성하지 않으므로 히스토리를 시각적으로 깔끔하게 유지 가능
2. 간편함
병합 커밋을 생성하지 않기 때문에 변경 사항을 통합하는 과정이 더 빠르고 간편
단점
히스토리 소실 위험
병합 커밋이 생성되지 않으므로, 브랜치가 언제 병합되었는지를 명확히 알 수 없다.
제한된 사용
fast-forward merge는 병합하려는 브랜치가 다른 브랜치의 직계 조상일 때만 가능.
git merge --no-ff (병합할 브랜치명)
명령어로 fast-forward대신 3-way-merge를 사용할 수 있다.
3-way-merge
각 브랜치에서 각각의 작업 내역이 있는경우 새로운 병합 커밋을 만들어서 병합하는 방식
장점
명확한 히스토리
병합 커밋을 생성하여 두 개의 부모 커밋을 참조하는데 이를 통해 병합 과정과 관련된 모든 커밋의 히스토리를 명확하게 볼 수 있다
충돌 관리
두 브랜치의 변경 사항을 통합하는 과정에서 발생할 수 있는 충돌을 명확하게 처리할 수 있습니다.
독립적인 브랜치 작업
병합 대상 브랜치가 독립적으로 작업될 수 있어, 각 브랜치에서의 변경 사항을 유지하면서 병합할 수 있습니다.
단점
복잡한 히스토리
많은 병합 커밋이 생성되면 히스토리가 복잡해질 수 있다.
추적 어려움:
여러 병합 커밋이 존재할 경우, 특정 변경 사항이 언제, 왜 발생했는지를 추적하는 것이 어려울 수 있다.
박태영
어른 아이
팔로우
이전 포스트
tag - 2 / release
다음 포스트
커밋 / 브랜치 옮기기
0개의 댓글
댓글 작성
관련 채용 정보