GitGit/GitHub 기초강의 6개 중 3번째난이도 입문

브랜치와 머지 — 독립적으로 작업하고 합치기

발행 읽는 시간 약 1 분

  • Git
  • 브랜치
  • 머지
  • conflict
  • branch

강의 소개

브랜치로 기능별 독립 작업 공간을 만들고, 머지로 통합하는 방법을 배웁니다. 충돌(conflict) 해결 방법도 함께 익힙니다.

브랜치가 필요한 이유#

Diagram · Mermaid

브랜치를 쓰면 기능 개발, 버그 수정, 실험을 메인 코드에 영향 없이 할 수 있습니다.


브랜치 기본 조작#

Bash
# 브랜치 목록 확인
git branch
# * main
#   feature/login

# 새 브랜치 만들기
git branch feature/login

# 브랜치 이동
git checkout feature/login
# 또는 (최신 방식)
git switch feature/login

# 만들면서 바로 이동
git checkout -b feature/login
git switch -c feature/login   # 최신 방식

# 브랜치 삭제
git branch -d feature/login   # 병합된 브랜치
git branch -D feature/login   # 강제 삭제

머지: 브랜치 합치기#

Bash
# main 브랜치에서
git switch main

# feature/login을 main에 병합
git merge feature/login

# 병합 완료 후 브랜치 정리
git branch -d feature/login

Fast-forward 머지#

Diagram · Mermaid

main에 새 커밋이 없으면 포인터만 이동합니다 (Fast-forward).

3-way 머지#

Diagram · Mermaid

양쪽에 새 커밋이 있으면 새 머지 커밋이 생성됩니다.


충돌(Conflict) 해결#

같은 파일의 같은 줄을 양쪽에서 수정하면 충돌이 발생합니다.

Bash
git merge feature/login
# CONFLICT (content): Merge conflict in index.html
# Automatic merge failed; fix conflicts and then commit the result.

충돌 파일을 열면:

HTML
<<<<<<< HEAD
<title>메인 제목</title>
=======
<title>로그인 페이지</title>
>>>>>>> feature/login
  • <<<<<<< HEAD ~ =======: 현재 브랜치(main)의 내용
  • ======= ~ >>>>>>>: 병합하려는 브랜치의 내용

원하는 내용으로 수정 후:

HTML
<title>로그인 페이지</title>
Bash
# 충돌 해결 후
git add index.html
git commit -m "merge: feature/login 병합, 타이틀 충돌 해결"

rebase: 깔끔한 이력 만들기#

Diagram · Mermaid
Bash
# feature 브랜치에서
git switch feature/login
git rebase main

# 이후 main에서 fast-forward 머지
git switch main
git merge feature/login

rebase는 커밋을 재작성해 직선형 이력을 만듭니다. 공유 브랜치에서는 사용 주의.


브랜치 전략#

Text
main          — 배포 가능한 안정 코드
develop       — 개발 통합 브랜치
feature/xxx   — 기능 개발
fix/xxx       — 버그 수정
release/x.x   — 릴리즈 준비
hotfix/xxx    — 긴급 수정

정리#

명령어역할
git branch <name>브랜치 생성
git switch <name>브랜치 이동
git switch -c <name>생성+이동
git merge <branch>브랜치 병합
git rebase <branch>커밋 재배치
git branch -d <name>브랜치 삭제

다음 편에서는 GitHub 원격 저장소 — 코드를 원격에 올리고 팀원과 공유하는 방법을 배웁니다.

Follow · Ask · Work

이 글이 도움이 됐다면

짧은 작업 기록과 데모는 인스타그램에 올립니다. 만들고 싶은 것이 있다면 프로젝트 의뢰나 협업 제안도 편하게 보내 주세요.

글쓴이

파란여우

직접 만든 AI 앱·제품의 개발·배포를 공개하는 실전형 테크 크리에이터

파란여우 소개 Instagram @bluefox._.hi

이어서 보기

만들고 싶은 것이 있다면 프로젝트 의뢰로 알려 주세요.