반응형
GitHub를 활용한 협업 프로세스
1. Main Repositories 생성하기
- 팀장(관리자)이 프로젝트 중심이 될 메인 저장소(Main Repositories)를 생성합니다.
- 협업 참여자는 이 저장소를 기반으로 작업하게 된다.
2. 팀원이 Fork하여 개인 Repositories 생성 후 로컬에 적용
- 팀원은 메인 저장소를 Fork하여 자신의 GitHub 계정으로 복사한다.
- 이후, Fork한 저장소를 로컬 환경으로 Clone하여 작업을 시작한다.
git clone <Fork된 저장소 URL>
cd <저장소 이름>
3. 각각 로컬에서 수정 및 개인 Repositories에 Push
- 코드 작성이나 수정 작업을 로컬에서 완료한 뒤 변경 내용을 커밋하고 개인 저장소에 Push한다.
git add.
git commit -m "커밋 메시지"
git push origin <브런치 이름>
4. Pull Request 생성
- fork후 작업했던 개인 저장소의 변경 사항을 메인 저장소로 반영하고 싶다면 GitHub에서 Pull Request를 보낸다.
- Pull Request는 팀장(관리자)이 변경 내용을 확인하고 Merge 여부를 결정한다
- 중간 Reviewer가 존재시 확인 절차 진행
5. Conflict 발생시 해결
- Pull Request에서 Conflict(충돌)가 발생하면 메인 저장소의 최신 상태를 로컬로 가져와 충돌을 해결한다.
# upstream 이름으로 원본 저장소를 remote 해두었을때 최신 가져오기
git pull upstream main
git add .
git commit -m "충돌 해결"
git push origin <브런치 이름>
6. Merge로 변경 사항 반영
- 팀장이 Pull Request를 승인하면 변경 내용이 메인 저장소에 Merge
TIP
1. Upstream 설정 (원본 저장소 remote 하기)
- Fork한 저장소와 원본 저장소를 연결하여 최신 상태 유지 편의성
git remote add upstream <원본저장소 url>
2. 최신 상태 유지
- 작업 전에 항상 메인 저장소의 변경 내용을 로컬로 가져오기.
git pull upstream main
반응형