간단하게 생각하면 좋을 것 같다.
깃헙에 올라와 있는 파일을 받아 개발을 진행한다고 가정하고 순서를 정리해보면,
ex) git push origin gunkim
이렇게 푸쉬 후 내 원격 저장소에서 pull request 버튼을 눌러 merge를 요청한다.
하지만 이렇게 merge 하게 되면 위험성이 존재한다.
const와 같이 재선언 재할당이 불가능한 선언의 경우 동일한 식별자 또는 변수 할당으로 오류가 생길 수 있다.
이에 해결방안 한 가지가 있다면, 바로 push와 merge 중간에 dev라는 중간 개발 브랜치를 만드는 것이다.
배포자는 로컬에서 dev branch를 만든 후 이를 git push origin dev 하여 dev 브랜치를 default 브랜치로 만들거나 git hub에서 default 브랜치를 dev로 설정하여 default 브랜치로 만든다.
배포받는 팀원은 git clone . 하여 파일을 받은 후, 새로운 개발 브랜치 생성 후 거기서 작업이 완료되면, 온라인 개발 브랜치 저장소로 push 후, git pull origin dev를 진행하여 conflict 부분 검사 및 해결 후 다시 push한다. 이렇게 중복 및 에러사항을 해결한 파일을 온라인 dev 저장소에서 merge하면 끝이다.
merge 완료 후 내 로컬 dev 파일도 원격 dev 저장소와 똑같이 만들어 주기 위해 pull origin dev 하면 끝!
마지막 최종 작업이 끝나면 완성된 온라인 dev 저장소에서 main 브랜치로 이동하여 배포하면 모든 작업이 완료된다.