본문 바로가기
카테고리 없음

[Git] Git Branch 협업

by 끼미226 2025. 6. 30.

 

 

팀 프로젝트에서 Git을 사용해서 협업을 하게 된 김에,

효율적으로 사용하기 위해 브랜치 전략과 작업 규칙, 워크플로우를 정리해 보았습니다.

 


👍 사용자 정보 설정 (git config)

내 GitHub 계정 연결

  • GitHub와 연동하기 위해 사용자 정보를 설정한다 :
git config --global user.email "본인이메일주소"
git config --global user.name "본인이름"

 

git 설정 내용 확인

git config --list

 


👍Git branch 규칙

팀원들과 함께 git branch 규칙을 먼저 정한 후 진행한다.

브랜치 설명
main 제품으로 출시될 수 있는 안정 버전
develop 다음 출시 버전을 준비하는 개발 브랜치
feature/* 기능을 개발하는 개별 작업 브랜치
release 배포 준비를 위한 브랜치
hotfix 배포 중 긴급 수정용 브랜치

 


🔑 브랜치 전략: Git Flow

예를 들어 main → develop → feature 구성으로 정리할 수 있습니다:

브랜치 설명
main 제품으로 출시 가능한 상태 (배포용)
develop 다음 버전을 준비하는 통합 브랜치
feature/* 각 기능 개발용 작업 브랜치

💡 개인 작업은 꼭 feature/기능명 브랜치에서만 수행해야 다.  

 


✅ feature 브랜치 예시

작업자는 각자 고유 브랜치를 만들어 사용합니다:

 

팀원 브랜치명 예시
팀원1 feature/security
팀원2 feature/user
팀원3 feature/post
팀원4 feature/comment

💡  브랜치 이름에 기능명을 함께 명시해 구분을 명확히 하는 것이 좋다.

 

 


 

💡 작업 규칙 요약

  1. 전체 흐름은 main → develop → feature 브랜치로 구성한다.
  2. 개인 작업은 반드시 feature 브랜치에서 진행한다.
  3. 작업을 시작하기 전에는 develop 브랜치에서 최신 내용을 받아온다.
  4. 작업을 마친 후에는 feature 브랜치를 develop 브랜치로 Pull Request 한다.
  5. 프로젝트가 완료되면 develop 브랜치를 main 브랜치로 병합한다.2

🧩 Git Workflow

1️⃣ 원격 저장소 복제

  • 로컬 저장소가 없을 경우 : 
git clone <repository_url>

 

  • 로컬 저장소가 이미 있을 경우 :
git pull origin develop

 

 

2️⃣  기준 브랜치에서 내 작업 브랜치 생성

  • origin/develop 브랜치를 기준으로 새로운 작업 브랜치를 만들기 :
git checkout -b feature/login origin/develop

 

 

 

3️⃣ 작업 브랜치를 원격에 연결 (Tracking 설정)

  • 새로운 작업 브랜치(feature/login)을 원격 저장소(origin)에 연결
git push -u origin feature/login
 

-u는 upstream 설정을 위해 최초 1회 설정 필요.

이후엔 그냥 git push, git pull만으로 자동 연결됨.

 

 

 

4️⃣ 작업 → 커밋 → push

  • 브랜치 안에서 원하는 작업을 수행한 뒤, 커밋하고 원격 저장소로 푸시한다:
git add .
git commit -m "로그인 API 기능 구현"
git push
 
 
 

5️⃣ Pull Request(PR) 생성

 

  1. GitHub 레포지토리 접속
  2. feature/login 브랜치 → develop 브랜치로 PR 생성
  3. 제목: 작업 내용을 명확하게 작성
  4. 본문: 구현한 기능, 관련 이슈 번호, 테스트 여부 등 기재
  5. 팀원들에게 PR 공유 및 승인 요청

 

 

✅ 자주 쓰는 명령어 요약

git branch -r # 원격 브랜치 목록 보기
git branch -vv # 브랜치 연결 상태 확인
git status # 현재 작업 상태
git log --oneline --graph --all # 커밋 흐름 시각화
 
 
 

 
 
추후 트러블슈팅 과정도 추가하여 업데이트 할 예정입니다.