코드 관리
브랜치(Branch)
브랜치는 Git에서 특정 커밋을 가리키며, 새 변경을 별도로 이어서 기록할 때 사용하는 이름입니다.
쉬운 설명
잘 열리는 스터디 신청 페이지를 유지하면서 새 기능을 시험하고 싶을 수 있어요. Git에서는 브랜치를 만들어 기존 기록에서 새 작업을 따로 이어갈 수 있어요. 예를 들어 main은 기존 상태를 가리키고, form-fix에서는 신청 오류를 고친 커밋을 쌓는 식이에요. 검토가 끝나면 필요한 변경을 main에 합칠 수 있어요.
이런 상황에서 만나요
AI에게 신청 오류 수정을 맡기기 전에 “새 브랜치에서 작업해 주세요”라고 할 수 있어요. 아래는 form-fix로 전환한 뒤 수정 내용을 커밋한 상태를 간추린 화면이에요. 어떤 브랜치에서 작업 중인지와 main에 아직 합치지 않은 변경을 확인해요.
현재 작업 위치와 main에 합칠 변경을 확인해요
$ git branch --show-current form-fix
빈 이메일 제출 차단
변경 파일: SignupForm.tsx
main: 수정 전 커밋을 가리킴
변경을 검토한 뒤 main에 병합
- 1명령의 결과는 지금 작업 중인 브랜치 이름이에요.
- 2수정을 커밋하면 현재 브랜치의 기록이 이어져요.
- 3이 예시에서 main은 그대로예요. 브랜치에서 커밋했다고 main에도 자동 반영되지는 않아요.
수정 전에는 현재 브랜치를 확인하고, 수정 후에는 변경 내용과 실제 동작을 검토하세요. “form-fix의 변경을 main과 비교해서 보여 줘”라고 AI에게 요청할 수도 있어요. 합치기 전에 다른 변경과 충돌하지 않는지 확인하고, 합친 뒤에도 신청 기능을 다시 실행해 봐요.
헷갈리기 쉬운 점
브랜치를 만들면 파일도 별도 폴더에 복사되나요?
일반적으로 같은 작업 폴더에서 브랜치를 전환하면 그 브랜치에 맞게 파일 내용이 바뀌어요. 별도 폴더가 자동으로 생기는 것은 아니에요. 여러 작업의 파일을 동시에 열어 두고 싶다면 Git의 Worktree 같은 기능을 사용할 수 있어요.
아직 커밋하지 않은 수정은 브랜치를 바꿀 때 따라가거나, 전환을 막을 수 있어요. 브랜치 이름만으로 작업이 완전히 분리됐다고 판단하지 말고 작업 폴더의 변경 상태도 확인하세요. 브랜치를 만들었다고 원격 저장소에 올라가거나 사이트가 자동으로 배포되는 것은 아니에요.
왜 알아야 할까요?
AI가 만든 실험적인 수정과 기존 기준 상태를 나눠 검토할 수 있어요. 현재 브랜치와 변경 상태를 확인하면 엉뚱한 작업을 main에 합치는 실수를 줄일 수 있어요.
조금 더 자세히
커밋은 변경된 프로젝트 상태를 기록하고, 브랜치는 그런 커밋 중 하나를 가리킵니다. 현재 브랜치에서 새 커밋을 만들면 해당 브랜치가 새 커밋을 가리키도록 이동합니다. main도 특별한 저장 방식이 아니라 관례적으로 쓰는 브랜치 이름입니다.
다른 브랜치의 변경을 현재 브랜치에 합치는 작업을 병합이라고 합니다. 같은 부분을 다르게 수정했다면 충돌을 해결해야 할 수 있습니다. 자동으로 합쳐졌더라도 기능이 함께 잘 동작하는지 확인해야 합니다.
브랜치의 기록은 내 컴퓨터에만 있을 수도 있습니다. 원격 저장소로 보내는 푸시, 검토를 요청하는 풀 리퀘스트, 사이트에 반영하는 배포는 각각 별도의 작업입니다. 팀과 프로젝트 설정에 따라 이 과정이 자동으로 이어질 수도 있습니다.
직접 사용할 때 확인해 보세요
- 현재 브랜치와 커밋하지 않은 변경을 확인한다
- 기준 브랜치와 변경 내용을 비교한다
- 병합 후 실제 기능을 다시 확인한다