GitHub Flow는 협업할 때 유용한 전략이지만, 혼자서도 효과적으로 연습할 수 있는 방법이 있다.
주요 개념인 기능 단위 브랜치 생성 → 개발 → PR → 병합 → 정리 과정을 반복하면서 익숙해질 수 있다.
☞ 기본 개념
main
브랜치는 항상 안정적인 상태로 유지main
병합☞ 연습할 브랜치 전략
main
│
├── feature/data-processing (연산 기능 확장)
│ ├── 계산 기능 개선
│ ├── 결과 저장 기능 추가
│ ├── 특정 값 필터링 최적화
│
└── feature/ui-improvement (UI 및 사용자 경험 개선)
├── CLI 기반 인터페이스 추가
├── 명령어 개선 (clear, history)
✅ 1) 깃허브에서 연습용 프로젝트 만들기
# 로컬에서 새 프로젝트 생성
mkdir git-flow-practice
cd git-flow-practice
git init
# 원격 저장소 생성 후 연결
git remote add origin https://github.com/your-username/git-flow-practice.git
git branch -M main
git push -u origin main
이제 main
브랜치가 GitHub에 업로드된 상태다.
✅ 2) 새로운 기능을 추가할 때 feature 브랜치 생성
# 새로운 브랜치 생성
git checkout -b feature/data-processing
이제 feature/data-processing
브랜치에서 기능을 개발한다.
✅ 3) 기능 개발 후 커밋 & 원격 저장소에 Push
# 파일 변경 사항 추가
git add .
git commit -m "feat: 연산 기능 개선"
# 원격 저장소에 Push
git push origin feature/data-processing
GitHub에 가면 feature/data-processing
브랜치가 업로드된 걸 확인할 수 있다.
✅ 4) GitHub에서 Pull Request(PR) 생성
1. GitHub 저장소에 접속
2. feature/data-processing
브랜치에서 "New pull request" 클릭
3. PR 설명 작성 (기능 변경 내용 정리)
4. 혼자라도 PR 내용을 검토하고 병합할지 결정
5. main
브랜치로 병합 후 feature/data-processing
브랜치 삭제
✅ 5) 불필요한 브랜치 삭제
# 로컬 브랜치 삭제
git branch -d feature/data-processing
# 만약 병합은 됐는데 삭제가 안된다면 아래 코드를 실행하자
git branch -D feature/data-processing
# 원격 브랜치 삭제
git push origin --delete feature/data-processing
이제 feature/data-processing
브랜치는 삭제되었고, main
브랜치에는 병합된 기능만 남는다.
✅ 다양한 기능을 추가하면서 브랜치 사용 연습
feature/ui-improvement
브랜치를 만들어 UI 개선 기능 추가feature/data-storage
브랜치를 만들어 연산 기록 저장 기능 추가✅ Git 충돌 해결 연습
feature/data-processing
과 feature/ui-improvement
에서 수정한 뒤 main
브랜치에 병합 시 충돌 해결하기✅ 과거 커밋 수정 및 Rebase 연습
git rebase -i HEAD~3
명령어를 사용하여 마지막 3개의 커밋 메시지 수정하기git commit --amend
를 사용하여 마지막 커밋 메시지 수정하기✅ GitHub Actions을 활용한 자동화 연습
main
브랜치에 병합될 때 자동으로 빌드가 성공하는지 확인☞ 각 기능별로 브랜치를 만들어 작업하고 PR을 병합하는 과정을 반복하면 GitHub Flow에 익숙해질 수 있다.
☞ 혼자 하는 프로젝트라도, GitHub Flow를 적용하면 체계적으로 관리할 수 있다.
☞ 커밋, 브랜치 관리, PR 작성, 충돌 해결 등 Git의 핵심 개념을 연습하는 좋은 방법이다!