협업을 위한 깃허브 사용하기
Branch와 Pull Request
Branch(git)
- branch(git) : 분기를 만들어 기능 단위로 나눠서 작업함
- git add/commit (특정 branch 내에서만 활동)
- merge (branch 병합)
git branch 생성하기
- git branch : main(or master) 생성
- git branch : branch 확인
- git branch a : ‘a’ branch 생성
- git checkout a : ‘a’ branch로 이동
git merge 하기
- git checkout main(or master) : main(or master)로 이동
- git merge a : ‘a’ branch merge
- git commit -m””
branch 전략
- Git-flow : main, hotfix, develop, feature, release
- GitHub-flow : main, branch
- Feature branch : main, develop, feature (추천)
PR(gitHub)
- 내가 한 변경 내용을 원래 프로젝트에 합쳐달라고 요청하는 작업
- 초기 셋팅 (팀장 역할)
- GitHub와 로컬 연결하기
- 기존 파일이 없을 때 > git clone “” .
- 기존 파일이 있을 때 > git init > git remote …
- WIKI 문서 작성 (컨벤션, 규칙) + README
-
dev
branch 생성git branch git branch dev git push --set-upstream origin dev
- [Github-Repository] > settings > General > Default branch > dev 선택
- dev에 먼저 merge
- ⚠️ main에 merge는 팀장만 > 최종 publish
- 프로젝트 (Projects)
- 프로젝트 생성
- 공유시 Project settings > visibility > public 으로 변경
- 이슈 (Issues)
- ⚠️ 모든 기능 개발은 Issues에서 시작
- [Github-Repository]에 Issue 생성
- [Github-Repository] > Issues > New Issue > create a branch (ex. feat/header)
- Add a title: 기능 이름 생성
- Add a description: 기능 내용 생성
- Assignees: 팀원 선택
- Labels: bug, duplicate, enhancement, good first issue, help wanted, invalid, question, wontfix
- Projects: Project 선택
- [로컬]에서 연결 및 작업
-
[로컬] > 아래 코드 입력
git fetch origin git checkout 브랜치명
-
로컬에서 작업 진행
git add . git commit -m "커밋 내용"
# git push 는 기능 단위로 (원격저장소에 올리기) git push
- [Github-Repository]에서 PR
- [Github-Repository] > Pull Request > ⚠️ delete Branch
- [로컬] > ⚠️ delete Branch
로컬 작업 → commit → push → GitHub 저장소 ↓ issues (버그/할일 기록) → projects ↓ pull request (코드 합치기 요청) ↓ Merge 완료 ↓ 해결된 Branch 삭제 (main / dev 만 남게)