2. 원격 저장소를 내 로컬 저장소로 받아오기(clone)
'1. Git이란? GitHub에 코드 올리기(commit과 push)' 글에 이어서 진행되는 과정이다.
1번에서 만든 원격 저장소인 boxiting 저장소를 다른 사람(cat이라고 하자)이 만들었다고 가정하고,
다른 사람의 원격 저장소를 나(oct)의 로컬 저장소로 받아오려고 한다.
1번 글과 같은 과정으로 내 pc에 로컬 저장소 boxiting-oct를 새로 하나 만든다. 그리고나서
1번에서 작업한 과정에 이어서 하는 중이라면 ->
맥 : 커맨드 + t 로 새 탭을 열거나 커맨드 + n으로 새 창을 연다.
윈도우 : cd .. 입력 후 엔터 -> 이전 폴더로 이동한 후 boxiting-oct 폴더로 이동
원격 저장소를 내 로컬 저장소로 받아오기 : git clone 원격 저장소 주소 .
※ 뒤에 점을 붙여야 현재 폴더에 파일들이 풀어진다.
점을 안 붙이면 boxiting-oct 폴더 안에 boxiting 폴더가 새로 만들어지고 그 안에 파일이 저장된다.
※ 잘 받아왔는지 확인 : ls
※ .git 폴더(숨겨진 폴더) 잘 들어왔는지 확인 : ls -al
테스트를 위해 vscode를 열어 boxiting-oct 폴더에 테스트용 파일 app.js를 생성했다.
깃허브에 올릴 파일을 선택 : git add
버전 만들기(커밋), 커밋 메세지 추가 : git commit -m "커밋 메세지"
원격 저장소에 올리기 (push하기) : git push
(참고 : 원격 저장소를 로컬로 받아와서 다시 원격저장소에 push할 때는 그럴 권한이 있는 경우에 가능하다.
*** collaborate )
oct가 원격저장소를 로컬로 받아 새로운 작업을 한 후 다시 원격저장소에 push 했다. 이때, cat의 로컬 저장소에 이 내용이 반영이 되어 있을까?
그렇지 않다. 왜냐면 cat은 oct가 만든 커밋을 아직 로컬로 가져오지 않았기 때문이다.
원격 저장소의 변경사항 로컬 저장소로 받아오기 : git pull origin master
ls명령어로 확인해보면 변경사항까지 잘 받아온 것이 확인된다.