팀 프로젝트에서 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 |
💡 브랜치 이름에 기능명을 함께 명시해 구분을 명확히 하는 것이 좋다.
💡 작업 규칙 요약
- 전체 흐름은 main → develop → feature 브랜치로 구성한다.
- 개인 작업은 반드시 feature 브랜치에서 진행한다.
- 작업을 시작하기 전에는 develop 브랜치에서 최신 내용을 받아온다.
- 작업을 마친 후에는 feature 브랜치를 develop 브랜치로 Pull Request 한다.
- 프로젝트가 완료되면 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) 생성
- GitHub 레포지토리 접속
- feature/login 브랜치 → develop 브랜치로 PR 생성
- 제목: 작업 내용을 명확하게 작성
- 본문: 구현한 기능, 관련 이슈 번호, 테스트 여부 등 기재
- 팀원들에게 PR 공유 및 승인 요청
✅ 자주 쓰는 명령어 요약
git branch -r # 원격 브랜치 목록 보기
git branch -vv # 브랜치 연결 상태 확인
git status # 현재 작업 상태
git log --oneline --graph --all # 커밋 흐름 시각화
추후 트러블슈팅 과정도 추가하여 업데이트 할 예정입니다.