원격저장소 vs 로컬저장소
로컬저장소 - 나의 컴퓨터 안에 있는 저장소
원격저장소 - 인터넷 세상 어딘가(원격)에 있는 다른 컴퓨터 속의 저장
원격 저장소와의 네 가지 상호작용
- 클론(clone) : 원격 저장소를 복제하기, 모든 버젼들이 같이 commit됨.
- 푸시(push) : 원격 저장소에 밀어넣기
- 패치(fetch) : 원격 저장소를 일단 가져만 오기
- 풀(pull) : 원격 저장소를 가져와서 합치기
원격 저장소 브랜치 이름
- main 브랜치 : master 브랜치
- origin : 원격 저장소에 붙은 일종의 별명
- origin/HEAD : 원격 저장소 origin의 HEAD
- origin/main : 원격 저장소 origin의 main
원격 저장소에 업로드 하는 법
- git remote add origin <주소>
- git branch -M main : 기존에 origin이었던 브랜치의 이름을 원격저장소의 권장사항에 맞추어진 main이라는 이름으로 바꾸어준다.
- git push -u origin main : 원격저장소에 푸시한다.
git fetch origin main - 원경저장소에 있는 커밋을 로컬저장소로 일단 가져만 온다.
git pull - fetch + merge
git merge origin/main - 원격저장소 브랜치와 로컬저장소 브랜치 합치기.
깃허브를 통한 협업
- 기여하려는 저장소를 본인 계정으로 포크하기
- 포크한 저장소를 클론하기
- 브랜치 생성 후 생성한 브랜치에서 작업하기
- 작업한 브랜치 푸시하기
- 풀 리퀘스트 보내기