초보 개발자

4 - 2 원격 저장소에 올리기 및 내려받기 본문

깃 & 깃허브

4 - 2 원격 저장소에 올리기 및 내려받기

taehyeki 2021. 9. 15. 15:42

지역 저장소와 원격 저장소를 연결했으니 이제부터 지역 저장소의 소스를 원격 저장소에 올릴 수도 있고, 원격 저장소에 있는 소스를 지역 저장소로 내려받을 수도 있다. 

지역 저장소의 소스를 원격 저장소로 올리는 것을 푸시(Push)라고 하고

원격 저장소에서 지역저장소로 내려 받는 것을 풀(Pull)이라고 한다.

 

원격 저장소에 파일 올리기 - git push

먼저 지역저장소의 커밋을 원격 저장소로 보내는 푸시를 알아보겠다.

git push -u origin master

지역저장소의 브랜치를 원격 저장소의 master브랜치로 푸시하라는 명령이다. 여기서 -u옵션은 지역 저장소의 브랜치를 원격 저장소의 master브랜치에 연결하기 위한 것으로 한번만 사용된다.

성공 적으로 푸쉬가 된 것을 확인할 수 있다. 지역 저장소의 커밋이 원격 저장소로 올라 갔다는 뜻이다.

이렇게 잘 올라간 것을 확인할 수 있다.

한 번이라도 지역 저장소와 원격 저장소를 연결해서 푸시했다면 그다음부터는 더 간단하게 푸시할 수 있다. 지역 저장소에서 또 다른 커밋을 만들고 다시 푸시해보겠다.

vim f1.txt // b추가
git commit -am 'add b'
git push

이미 앞에서 지역저장소의 브랜치와 origin의 master브랜치를 연결했기 때문에 다시 푸시할 때는 git push라고만 입력하면 된다.

브라우저를 새로고침 해보면 파일 목록에서 파일 이름 오른쪽에 최신 커밋 메시지가 나타나는데, 방금 커밋한 'add b'라는 커밋 메시지가 보인다.

 

f1.txt파일을 누르면 가장 최근에 수정한 파일 내용인 a와b가 들어있다.

 

깃허브 사이트에서 직접 커밋하기

보통 지역저장소와 원격 저장소를 연결한 후 지역 저장소의 커밋을 원격 저장소에 푸시하는 방법을 많이 사용하지만 깃허브에서 직접 커밋할 수도 있다. 지역 저장소가 있는 컴퓨터를 사용할 수 없을 때 편리하겠다.

Create new file을 누르고 f2.txt라는 파일의 이름으로 내용은 '1,2,3'을 입력해보겠다.

원격저장소에 새로운 커밋이 잘 추가된 것을 확인할 수 있다.

 

원격 저장소에서 파일 내려받기 - git pull

원격 저장소에 있는 소스파일을 다른 사용자가 수정했거나 깃허브 사이트에서 직접 커밋하면 지역 저장소와 차이가 생긴다. 이럴 때는 원격 저장소와 지역 저장소의 상태를 같게 만들기 위해 원격 저장소의 소스를 지역 저장소로 가져옵니다. 이것을 '풀한다'고 한다.

 

앞서 깃허브 사이트에서 바로 f2.txt라는 파일을 만들었지만 지역 저장소에는 f2.txt파일이 없다.

다음 명령은 origin(원격 저장소)의 내용을 master브랜치로 가져온다는 뜻이다.

기본 원격 저장소가 origin이고 지역저장소의 기본 브랜치가 master이기 때문에 git pull만 입력해도 된다.

깃허브에서 만들었던 Create f2.txt라는 커밋이 지역 저장소 커밋 로그에도 나타나는 것을 확인할 수 있다.

 

깃허브 저장소 화면 살펴보기

1. taehyeki는 깃허브 계정을, ex1은 저장소 이름을 나타낸다.

2. 이 저장소의 알림 내용을 받아 본다.

3. 이 저장소를 즐겨찾기 한다.

4. 이 저장소를 복제한다.

5. 커밋 개수나 브랜치 개수 등 커밋과 관련된 정보 들이다.

6. 저장소에 있는 파일 정보이다. 파일 이름과 최신 커밋 메시지, 최신 커밋 시간이 나타난다.