git으로 버전관리를 할 수 있게 되었다면 github를 사용해서 원격저장소로 관리해 보자
1. github 계정 생성
일단 github 회원가입해서 계정 만들고 repository를 만든다
2. 기본 브랜치 설정
git bash 창에서 기본브랜치를 master에서 main으로 바꿔야 한다
master 브랜치에 있는 상태에서 git branch -M main을 해준다
3. 원격저장소에 push 하기
git push -u 깃헙주소 main (-u는 주소 기억하라는 거, 한번 썼으면 다음부터 git push만 써도 된다)
깃허브에서도 새로고침해서 확인해 보면 잘 올라간 걸 확인할 수 있다
4. 리모트 연결
git remote add origin 깃헙주소
이렇게 하면 이제 원격저장소 이름이 origin인 거다 (관습적으로 오리진 씀)
git push 깃헙주소 main 이렇게 계속 푸시하던 거를
git push origin main 이렇게 간단히 할 수 있게 된 거다
5. github에 있는 코드 가져오기
이제 협업을 위해 깃허브에 있는 코드를 받는 것을 해보겠다
가상의 팀원 폴더를 생성했고 팀원폴더에서 터미널을 열어 git clone 깃헙주소로 복사해 온다
요렇게 잘 들어왔다
이제 팀원도 작업을 할 수 있게 되었다
팀원이 작업한 거를 push 하려면 팀원을 콜라보레이터로 추가해야 한다
6. git pull
만약 팀원이 작업을 먼저 해서 원격저장소에 push를 했다
그 이후에 나도 작업을 해서 변경사항을 push 하려 하면 에러가 난다
이럴 때는 최신상태인 원격저장소거를 내 로컬저장소로 가져온 후에 push 한다
git pull 깃헙주소(origin) 브랜치명
인데 처음에 -u 옵션 써서 잘 push 했다면 마찬가지로 git pull 만 써도 된다
이렇게 잘 가져와서 원격저장소와 동일한 상태가 되면 이제 내 거를 push 할 수 있다
git pull 은 git fetch와 git merge를 합친 거다
git fetch는 원격저장소의 신규커밋을 가져오는 거
git merge로 내 브랜치에 머지
그래서 pull 할 때 merge 충돌도 날 수 있다