얄코님의 제대로 파는 Git & GitHub 을 기반으로 작성하였습니다.
github과 관련된 기초적인 내용은 따로 정리 하지 않는다.
로컬의 Git저장소에 원격 저장소로의 연결 추가
git remote add origin (원격 저장소 주소)
origin 은 원격 저장소의 이름으로, 다른 이름을 사용해도 된다.
기본 브랜치명을 main으로 - GitHub 권장
git branch -M main
로컬 저장소의 커밋 내역들을 원격으로 push(업로드)
-u 또는 --set-upstream : 현재 브랜치와 명시된 원격 브랜치 기본 연결(default 설정)
아래 명령어 이후에는 단순히 push 명령어만 작성해도 기본 연결된 원격 저장소로 저장된다.
git push -u origin main
현재 프로젝트와 연결된 원격 저장소 목록 확인
git remote
-v 명령어를 이용해서 remote와 관련된 자세한 내용을 확인 할 수 있다.
Github의 각 Project의 메인 화면에서 code - downloadZip 을 통해 해당 프로젝트를 압축파일로 다운 받을 수 있지만 이렇게 할 경우 .git 파일이 다운되지 않고, 협업이 불가능하다.
협업을 위해서는 다운받기 원하는 폴더를 만들고 해당 폴더에서 clone 명령어를 작성한다
git clone (clone 주소) // Github Project home - code - clonde에서 확인 가능
내 동료가 올려둔 github의 작업을 가져올 수 있다.
git pull origin main
여기서 origin은 원격 저장소의 별칭이고 main은 브랜치이다.
상단에 적어둔것과 같이 기본 연결을 해둘 경우 git pull 명령어만으로도 pull 명령어가 실행될 수 있다.
pull 할 것이 있을 때 push를 할 경우는 '내가 가진 코드가 최신 버전이 아니기 때문에' push를 할 수 없다. 이럴때는 원격 저장소의 최신 버전을 pull하여 원격의 버전을 받아온 다음 push가 가능하다.
'원격 저장소에 push 하기 위해서는 나의 코드가 원격 저장소의 최신코드에 맞춰져 있어야 한다.'
push 할 것이 있을 때 pull 하는 두 가지 방법은 merge, rebase를 통해 코드를 정리한 후 pull 할 수 있다.
git pull --no-rebase
git pull --rebase