Git 머지 명령어 (git merge)
git merge
는 여러 브랜치의 변경 사항을 하나로 합칠 때 사용하는 명령어입니다. 팀 협업이나 기능 개발 후 메인 브랜치에 통합할 때 주로 사용합니다.
요약
git merge <브랜치명>
: 다른 브랜치의 변경 사항을 현재 브랜치에 병합합니다.git merge --ff <브랜치명>
: Fast-forward 방식으로 병합합니다.git merge --no-ff <브랜치명>
: 강제로 병합 커밋을 만듭니다.git merge --no-commit <브랜치명>
: 병합 중 발생한 충돌 이력을 확인합니다.git merge --abort
: 병합 중 문제가 발생했을 때, 병합을 중단하고 이전 상태로 되돌립니다.git merge --continue
: 파일 충돌로 중단된 병합을 완료하려고 시도합니다.git merge --squash
: 병합되는 브랜치의 모든 변경 사항을 단일 커밋으로 결합합니다.
자세히
1. 기본 머지 명령
git merge <브랜치명>
: 다른 브랜치의 변경 사항을 현재 브랜치에 병합합니다.- 예시:
git merge feature/login
feature/login
브랜치에서 작업한 내용을 현재 브랜치에 병합합니다.
- 예시:
2. Fast-forward 병합
git merge --ff <브랜치명>
: Fast-forward 방식으로 병합합니다.- 특징: 브랜치가 한 줄로 이어지며, 별도의 병합 커밋이 생성되지 않습니다.
- 예시:
git merge --ff feature/signup
:feature/login
브랜치에서 작업한 내용을 현재 브랜치에 Fast-forward 방식으로 병합합니다.
3. No Fast-forward 병합
git merge --no-ff <브랜치명>
: 강제로 병합 커밋을 만듭니다.- 특징:
- Fast-forward 병합이 가능해도 별도 병합 커밋을 생성합니다.
- 프로젝트의 병합 기록을 명확하게 남기고 싶을 때 유용합니다.
- 예시:
git merge --no-ff feature/payment
:feature/login
브랜치에서 작업한 내용을 현재 브랜치에 병합 커밋을 생성해 병합합니다.
- 특징:
4. 병합 커밋 되돌리기
git merge --abort
: 병합 중 문제가 발생했을 때, 병합을 중단하고 이전 상태로 되돌립니다.
5. 병합 충돌 이력 보기
git merge --no-commit <브랜치명>
: 병합 중 발생한 충돌 이력을 확인합니다.