Learn

브랜치로 작업하기

Git

브랜치 만들기, 전환하기, 병합하기. 왜 (거의) 항상 main에서 직접 작업하지 않는지.

브랜치는 병렬적인 개발 흐름이에요. 현재 main 상태에서 출발해서 수정을 하고, 준비가 되면 병합해요. 이 레슨에서는 브랜치 생성, 전환, 병합을 다뤄요.

main에서 직접 작업하지 않는 이유

main은 기준 브랜치예요. 거기에 깨진 코드를 commit하면 모두가 그 코드를 보게 돼요. 전용 브랜치를 만들면 작업이 격리돼요 : 실험하고, 망가뜨리고, 고치고, 깔끔해졌을 때만 통합해요.

기본 규칙 : main은 항상 안정적이고 배포 가능한 상태여야 해요. 나머지는 모두 브랜치에서 이루어져요.

브랜치 만들기

shell
git branch my-feature

이 명령어는 브랜치를 만들지만 main에 그대로 있어요. 만들고 전환을 한 번에 하려면 :

shell
git switch -c my-feature

브랜치 목록 보기

shell
git branch

별표 *가 현재 브랜치를 나타내요. 원격 브랜치도 보려면 :

shell
git branch -a

브랜치 전환하기

shell
git switch my-feature
git switch main

브랜치에서 commit하기

브랜치 위에서 평소처럼 commit하면 돼요. 이 commit들은 이 브랜치에만 존재해요.

shell
echo "새로운 기능" > feature.txt
git add feature.txt
git commit -m "feature.txt 추가"

브랜치를 main에 병합하기

작업이 끝나면 main으로 돌아와서 병합해요.

shell
git switch main
git merge my-feature

Git이 두 역사를 하나로 합치는 merge commit을 만들어요. 결과를 확인해봐요 :

shell
git log --oneline --graph

병합된 브랜치 삭제하기

병합 후에는 브랜치가 더 이상 필요 없어요. 레포를 깔끔하게 유지하기 위해 삭제해요 :

shell
git branch -d my-feature

-d (안전한 삭제) 옵션은 아직 병합되지 않은 브랜치의 삭제를 거부해요. 유용한 보호 장치예요.

git-scm.com - git branch git-scm.com - git switch

다음으로

브랜치를 익혔으니, 레포를 GitHub에 연결하고 팀과 함께 작업하는 방법을 배울 수 있어요.

다음 단계를 열려면 단계를 체크하세요

코스로 돌아가기