Git

브랜치를 사용해서! 협업을 해보자!

dev-sunflower 2025. 1. 6. 21:07

브랜치(Branch)란?

브랜치는 Git에서 프로젝트의 작업 공간을 분리해서 독립적으로 작업할 수 있도록 만들어주는 기능입니다. 새로운 기능 개발이나 버그 수정을 할 때, 기존 코드에 영향을 주지 않고 작업할 수 있어 매우 유용합니다.

브랜치 명령어 정리

  1. 브랜치 생성새로운 브랜치를 생성하지만, 생성 후 자동으로 이동하지는 않습니다.
  2. git branch [브랜치 이름]
  3. 브랜치 이동또는
  4. git checkout [브랜치 이름]
  5. git switch [브랜치 이름]
  6. 브랜치 생성과 동시에 이동
    git switch 를 사용할 경우git checkout을 사용할 경우
  7. git checkout -b [브랜치 이름]
  8. git switch -c [브랜치 이름]
  9. 브랜치 병합작업이 완료된 브랜치를 현재 브랜치에 병합합니다.
  10. git merge \[브랜치 이름\]

브랜치 옵션 간단 정리

옵션 설명

-c [브랜치 이름] switch 명령어로 브랜치를 만들면서 이동
-b [브랜치 이름] checkout 명령어로 브랜치를 만들면서 이동

Pull Request로 협업하기

Pull Request(P.R)는 "변경 내용을 검토하고 병합을 요청하는 과정"을 의미합니다. 터미널에서 바로 병합하지 않고, GitHub에서 Pull Request를 활용하면 협업 과정에서 큰 장점을 얻을 수 있습니다.

터미널 병합 대신 GitHub에서 병합하는 이유

  • 터미널로 직접 병합하면 기록이 명확하지 않아 추적이 어렵습니다.
  • GitHub의 Pull Request를 사용하면 팀원들이 내 코드를 확인하고, 리뷰하거나 코멘트를 남길 수 있습니다.
  • 협업 중 문제점을 사전에 발견하고 해결할 수 있어 코드 품질을 높일 수 있습니다.

Pull Request 프로세스

  1. 브랜치를 생성하고 이동합니다.
  2. 기능을 개발하고 변경 내용을 커밋(Commit)합니다.
  3. 작업한 브랜치를 원격 저장소에 푸시(Push)합니다.
  4. GitHub에서 Pull Request를 생성합니다.
  5. 팀원 리뷰 후 GitHub에서 병합(Merge)합니다.
  6. 로컬에서도 병합된 내용을 반영합니다:
    git pull origin main

Main 브랜치의 문제점과 해결책

문제: Main 브랜치는 배포용이다!

Main 브랜치는 배포용으로 안정성을 유지해야 합니다. 테스트되지 않은 코드를 Main에 병합하면 큰 문제가 발생할 수 있습니다.

해결 방법 1: 개발용 브랜치 추가

브랜치를 다음과 같이 분리하여 관리합니다:

  • Main 브랜치: 배포용 (Production)
  • Develop 브랜치: 테스트용 (Integration/Testing)
  • 기능 브랜치: 기능 개발용 (Feature Branch)

작업은 기능 브랜치에서 진행하며, 작업 완료 후 Develop 브랜치로 병합하여 테스트합니다. 최종적으로 문제가 없을 때 Main 브랜치에 병합합니다.

해결 방법 2: 로컬에서 먼저 테스트

  1. Develop 브랜치의 코드를 로컬로 가져옵니다:
  2. git pull origin develop
  3. 로컬 환경에서 충분히 테스트를 진행합니다.
  4. 오류가 없으면 변경 내용을 Develop 브랜치에 푸시합니다:
    git push origin develop

'Git' 카테고리의 다른 글

Git & GitHub 정리  (1) 2024.12.23